Tuesday, 13 December 2011

Ubuntu Linux 64bit compile error fix - STT_GNU_IFUNC symbol `strcmp' recompile with -fPIE and relink with -pie

Error:
/usr/bin/ld: dynamic STT_GNU_IFUNC symbol `strcmp' with pointer equality in `./libc.a(strcmp.o)' can not be used when making an executable; recompile with -fPIE and relink with -pie

FIX:-
Ignore -pie comment above, add -static to g++   e.g.


ln `g++ -m64 -print-file-name=libstdc++.a`
ln -s `g++ -m64 -print-file-name=libc.a`

g++ -m64 -static -static-libgcc -L.  exefile.cpp -oexefile







No comments:

Post a Comment