[Bug d/88238] New: libphobos compile problems on Solaris 10
ro at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Nov 28 10:20:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88238
Bug ID: 88238
Summary: libphobos compile problems on Solaris 10
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: d
Assignee: ibuclaw at gdcproject dot org
Reporter: ro at gcc dot gnu.org
Target Milestone: ---
Target: *-*-solaris2.10
Created attachment 45109
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45109&action=edit
Preliminary hacky patch
Even with
* the patch from PR d/88150 to use sections_elf_shared.d,
* the patch from PR d/87864 to provide minfo bracketing if the linker doesn't,
and
* the patch to link the D runtime libs with -lsocket -lnsl for the networking
functions from
https://gcc.gnu.org/ml/gcc-patches/2018-11/msg02248.html
which allow libgdruntime.so and libgphobos.so to link on Solaris 11.3 without
unresolved symbols, there are more on Solaris 10:
*
symbol not found: backtrace
(libdruntime/.libs/libgdruntime.so)
symbol not found: backtrace_symbols_fd
(libdruntime/.libs/libgdruntime.so)
symbol not found: backtrace_symbols
(libdruntime/.libs/libgdruntime.so)
Unlike Solaris 11, Solaris 10 lacks the backtrace functions in libc. When
trying to use them, this failed because backtrace-supported.h wasn't found
during configure. This is due to an error in m4/druntime/libraries.m4 which
tries to add to CPPFLAGS with +=, which of course the shell doesn't
understand.
*
symbol not found: dl_iterate_phdr
(libdruntime/.libs/libgdruntime.so)
Unlike Solaris 11, dl_iterate_phdr support was only backported to a late
Solaris 10 update and even so only lives in libdl, not in libc. Not yet
fixed.
*
symbol not found: getprogname
(libdruntime/.libs/libgdruntime.so)
Solaris 10 lacks getprogname or equivalent; for now I'm faking this by just
returning "a.out".
*
symbol not found: posix_memalign
(src/.libs/libgphobos.so)
Also missing from Solaris 10. I've not yet checked what to do here. One
might be able to use pagealign_alloc from gnulib instead?
More information about the Gcc-bugs
mailing list