[Issue 5278] gentoo's 'hardended' gcc doesn't work with dmd
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Sun Dec 18 07:42:50 PST 2011
http://d.puremagic.com/issues/show_bug.cgi?id=5278
--- Comment #19 from Chad Joan <chadjoan at gmail.com> 2011-12-18 07:42:42 PST ---
Well, I tried bisecting dmd to find which change caused this. It didn't work
because this problem does not care which version of dmd I am using, it cares
which RELEASE I am using.
I narrowed it down to the "-L--export-dynamic" flag in
$DPATH/linux/bin64/dmd.conf
If I remove that export-dynamic flag AND rebuild druntime/phobos from scratch,
everything is fine.
Of course, if I remove -L--export-dynamic AND I do NOT rebuild druntime/phobos
from scratch, I get this:
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
main.o: relocation R_X86_64_32 against `.data' can not be used when making a
shared object; recompile with -fPIC
main.o: could not read symbols: Bad value
collect2: ld returned 1 exit status
--- errorlevel 1
I take it this means that the executable and the library must agree on whether
or not to use -L--export-dynamic. I guess it makes sense.
By removing -L--export-dynamic and building dmd/druntime/phobos all from git at
v2.057, I was able to get the recent release of dmd to run on my machine
without using a special GCC.
Any chance we can remove -L--export-dynamic or fix it so that it does not do
this? (I have no idea how to fix it, but removing it is easy enough!)
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list