[Issue 13025] Tools repository does not build on Ubuntu

via Digitalmars-d-bugs digitalmars-d-bugs at puremagic.com
Fri Jul 11 11:59:07 PDT 2014


https://issues.dlang.org/show_bug.cgi?id=13025

--- Comment #9 from Martin Nowak <code at dawg.eu> ---
OK, I could reproduce the issue with a few C files.
It seems to be caused by a diagnostic bug in the linker.
For some reason (optimized linker scipt, hidden visibility) libcurl.so does not
carry _end and __bss_start, but one of it's dependencies does, librtmp.so.
When the linker sees that the undefined symbols __bss_start/_end are
dynamically exported by librtmp it throws an error, telling you that you're not
linking against librtmp even though you rely on one of it's symbols.
You can suppress this warning with -unresolved-symbols=ignore-in-shared-libs
and everything will work as expected.

We cannot use the PROVIDE(edata = .) and PROVIDE(end = .) symbols, because then
libphobos.so would not point to the correct bss segment of the executable.
I think it should be possible to find the .bss segment of the executable in
sections_linux though.

--


More information about the Digitalmars-d-bugs mailing list