repost: libg++ won't build on alphaev56-dec-osf4.0d
Jeffrey A Law
law@cygnus.com
Fri Dec 18 20:42:00 GMT 1998
In message < orogp1sy1p.fsf@araguaia.dcc.unicamp.br >you write:
> Good that you mentioned libstdc++: that's the very problem I'm trying
> to solve. libg++ has shown that, the way a shared libstdc++ is built
> on alpha, it won't be possible to link libstdc++ into any other
> shared library; it will fail just like it fails for libg++.
When it libstdc++ is built as s shared library and shows up on the
link line, then the linker should contain a reference to the library
so the dynamic loader can load it at run time -- libstdc++ should not be
actually included in the resulting library. At least that's how things work
on most systems.
In general, a shared library need to either:
a. Include copies of any stndard libraries (libgcc/libstdc++) or
b. Those libraries need to be built as shared libraries and referenced
by name in any libraries which use libgcc/libstdc++ routines.
> As far as I can tell, we only have two options: (i) link libstdc++
> with libgcc and tell everybody that, only alpha, they must link their
> shared libraries with either libstdc++ or libgcc or neither, but not
> both; or (ii) link libstdc++ without libgcc, and let other libraries
> and applications link with both when they have to.
>
> I prefer the second alternative, don't you?
I don't know all the issues, and I'm not likely to find the time to study
them. I'd much prefer rth to get involved.
But any scheme where libgcc's functions are not being included in shared
libs which are built with gcc is wrong and will lose in a major way.
jeff
More information about the Gcc-bugs
mailing list