-
Notifications
You must be signed in to change notification settings - Fork 4
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
Compiling issues #11
Comments
I had the same issue but adding See #4 (comment) for the full code snippet |
@elainehoml Thanks for the heads up. I added these lines to the makefile11, but still run into the same issue. Same error output as in my initial post. |
Adding these flags in makefile11 seems to work. A different workaround that worked for me as well was to use GCC 10 instead of GCC 11. |
Yeah. I eventually got it to compile with a different version of GCC (8.0)
and adding these flags. Thanks.
…On Wed, 14 Feb 2024, 10:13 pm Stefan Fleischmann, ***@***.***> wrote:
Adding these flags in makefile11 seems to work. A different workaround
that worked for me as well was to use GCC 10 instead of GCC 11.
—
Reply to this email directly, view it on GitHub
<#11 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AGEXN7BZNKGSSKSSIRTZSHTYTSL4VAVCNFSM6AAAAAA7KC2IFCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSNBTGU2TMNJRGM>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Just to provide more context here, at some point several popular Linux distributions decided to compile their packaged versions of gcc with the A PIE (position independent executable) is a binary compiled with a security measure that is meant to prevent some common buffer overflow attacks; I'm not certain, but I imagine it has become the default due to several high-profile buffer overflow exploits in somewhat recent years (e.g., Heartbleed). I'm uncertain why PIE binaries can't be produced with NVCC, but some frightfully old CUDA docs provide a clue:
My educated guess is that modern versions of CUDA still do not support PIE binaries, although I can find no documentation out there to confirm or deny this hypothesis. |
Hey guys,
I have the following issue. When compiling with:
make exe -f makefile11
I get the following error after it compiles lots of other things:
/usr/bin/ld: /home/mbelouso/MotionCor3/Lib/libmrcfile.a(CLoadExtHeader.o): relocation R_X86_64_32 against symbol '__gxx_personality_v0@@CXXABI_1.3' can not be used when making a PIE object; recompile with -fPIE /usr/bin/ld: failed to set dynamic section sizes: bad value collect2: error: ld returned 1 exit status make: *** [makefile11:160: exe] Error 1
gcc and g++ version is 11.4, CUDA 11.8, linux mint 21
Any thoughts?
The text was updated successfully, but these errors were encountered: