Hey there community,
some weeks ago I upgraded from 16.04 to 16.10, but it wasn't
until now that I realized I can't develop with D anymore due to
an error in the linking stage of the compilation process. dmd
seems to be doing its job just fine, compiling with the -c flag
does not produce any warnings or errors that should not be there.
But when I move on to the linking stage with the instruction that
dmd uses itself:
cc app.o -o app -m64 -L/usr/lib/x86_64-linux-gnu -Xlinker
--export-dynamic -Xlinker -Bstatic -lphobos2 -Xlinker -Bdynamic
-lpthread -lm -lrt -ldl
I get a neverending ocean of errors that look pretty much all
like these:
/usr/bin/ld: app.o: relocation R_X86_64_32 against symbol
`__dmd_personality_v0' can not be used when making a shared
object; recompile with -fPIC
/usr/bin/ld:
/usr/lib/x86_64-linux-gnu/libphobos2.a(exception_24b_55a.o):
relocation R_X86_64_32 against symbol `__dmd_personality_v0' can
not be used when making a shared object; recompile with -fPIC
/usr/bin/ld:
/usr/lib/x86_64-linux-gnu/libphobos2.a(exception_24c_3b4.o):
relocation R_X86_64_32 against symbol `__dmd_personality_v0' can
not be used when making a shared object; recompile with -fPIC
/usr/bin/ld:
/usr/lib/x86_64-linux-gnu/libphobos2.a(exception_24f_4a2.o):
relocation R_X86_64_32 against symbol `__dmd_personality_v0' can
not be used when making a shared object; recompile with -fPIC
Anybody has any idea why this is happening? Is the only solution
to downgrade to Ubuntu 16.04 to be able to work in the meantime?
Thanks beforehand :)
- Having trouble compiling D on Ubuntu 16.10 Dechcaudron via Digitalmars-d
-