http://sourceware.org/bugzilla/show_bug.cgi?id=13577
Bug #: 13577 Summary: Gold linker does not respect --dynamic-list option Product: binutils Version: 2.21 Status: NEW Severity: normal Priority: P2 Component: gold AssignedTo: i...@airs.com ReportedBy: k...@gmx.de CC: ccout...@google.com Classification: Unclassified Created attachment 6154 --> http://sourceware.org/bugzilla/attachment.cgi?id=6154 Test case We encountered some problems with regards to symbols not being relocatable in DSOs. The shared libraries in our case are compiled with -Bsymbolic-functions turned on. To avoid that certain symbols are bound to the definition within the shared library we specificy the --dynamic-list option. This seems to work fine when ld.bfd is used, but does seem to be ignored when ld.gold is used instead. I've attached a small test case showing the issue. There is the source file libtest.cpp containing an symbol "foo" which in turn is called by "test_foo". The symbol "foo" is supposed to be relocatable even if compiled with -Bsymbolic. To achieve this --dynamic-list is passed, pointing to a file which declares "foo" global. When ld.bfd is in use, the resulting libtestsym.so (which is compiled with -Bsymbolic-functions -Wl,--dynamic-list=libtest_syms.txt) contains a symbol "foo" which is relocatable (checked with "objdump -D libtestsym.so | grep foo | grep plt"). When being linked by ld.gold, however, "foo" in libtestsym.so does not seem to be relocatable, as seen by the missing .PLT entry for "foo". I'm attaching the test case + command line sequence to show this problem. Note: I've also tested with latest trunk version of gold, still did not work. -- Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug. _______________________________________________ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils