-
Notifications
You must be signed in to change notification settings - Fork 12.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
undefined reference to `__gxx_personality_v0' on Windows Vista 32bit with GCC 4.8.1 #7953
Comments
That would be because the gcc you're using seems to only support sjlj method for stack frame unwinding whereas the rust runtime seems to want DWARF exceptions. |
That's right. But we're not using unwinding at all on windows, so this could be fixed with some #ifdefs and makefile options. |
What are the plans to use on Windows, then for the idea of stack unwinding ? |
Proper exception handling on Windows still needs to be implemented in LLVM. http://llvm.org/bugs/show_bug.cgi?id=11285 It looks like they might have gone with a half working hack for now resulting in 64-bit support on Windows being dropped. |
#908 is the windows unwinding issue. We intend to implement unwinding with a special windows-only abi that passes an 'unwind' flag (referred to as 'return-based unwinding'). |
@graydon has a patch for return-unwind somewhere if somebody wants to pick it up. |
Some LLVM patches exist for simple Windows 64 Exception Handling support in LLVM. See LLVMdev message http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-April/060838.html |
@graydon @brson @thestinger @luqmana I found some additional info from Andrew Kaylor @ Intel that says he recently committed MCJIT to LLVM 3.4 and it can be used for Exception Handling support (and works on Windows, but however generates ELF object images). I'm wondering if this might be useful for us ? Here's the LLVMdev thread where Andrew makes mention of it https://groups.google.com/d/msg/llvm-dev/JvrxgC_OjM8/UMpDzMCQMGkJ |
It's not really relevant to this, it works on Windows but doesn't have any more exception handling support than the ahead-of-time compiler does. |
I think "undefined reference" issue is fixed by #8488, specifically by 63e53b8. @thadguidry, could you check this? |
@klutzy Yeap, it's fix now. |
When trying to compile Rust on Windows Vista 32bit with toolchain set to:
export PATH="/c/mingw-builds/x32-4.8.1-release-win32-sjlj-rev2/mingw32/bin:/usr/local:$PATH"
I get the following error output:
The text was updated successfully, but these errors were encountered: