samba 2.2.5-pre and solaris 9
Mike Gerdts
Michael.Gerdts at alcatel.com
Fri Jun 7 11:05:02 GMT 2002
On Fri, 2002-06-07 at 13:30, Andrew Morgan wrote:
> It seems like the proper method is to use gcc to do the linking rather
> than ld, if the compiler is gcc. I remember doing this when I compiled
> pam_ldap on Solaris 8.
>
> If you are using Sun's Workshop compiler, use the linker in
> /usr/ccs/bin/ld.
>
> Andy
But gcc just calls a whatever linker it is supposed to use. That is,
gcc does not link the object itself, it relies upon an external linker.
Depending on how gcc was ./configure'd, that linker may be Sun's ld, GNU
ld, or some other ld.
Looking at the build instructions for gcc 2.95.3
(gcc-2.95.3/install/SPECIFIC), Sun's ld seems to be quite fine to use
with gcc (unless compiling c++):
binutils 2.9.1 has known bugs on this platform. We recommend to use
binutils 2.10 or the vendor tools (Sun as, Sun ld).
Unfortunately, C++ shared libraries, including libstdc++, won't work
properly if assembled with Sun as: the linker will complain about
relocations in read-only sections, in the definition of virtual
tables. Also, Sun as fails to process long symbols resulting from
mangling template-heavy C++ function names.
The C++ problem does seem to suggest that the use of gnu ld has at least
one advantage. If only gnu ld supported -R../lib like Sun's ld.
Mike
More information about the samba-technical
mailing list