[lsb-discuss] LSB interface addition discussion
Wichmann, Mats D
mats.d.wichmann at intel.com
Wed Jun 11 05:32:05 PDT 2008
Denis Silakov wrote:
> Wichmann, Mats D wrote:
>> Comment #3: as a general case, there are a LOT of interfaces
>> that begin with double underscores in glibc. Many of these
>> are not intended to be /directly/ called by applications, but
>> macros, optimizations, and other tricks may well cause them
>> to appear in the compiled (non-LSB) binary.
> As it is mentioned in a recent comment to bug 1773
> (http://bugs.linuxbase.org/show_bug.cgi?id=1773), one of these
> 'tricks' is "libstdc++.a", which has a lot of dependencies on such
> symbols. So when application is linked with libstdc++ statically, it
> automatically obtains all these dependencies.
It has always been hard to support the use of the host's
.a files, because you end up losing the version support
that the LSB model, and shared-library-based build system,
are intending to provide. It *may* work, but for something
that's as fundamental as libstc++ almost certainly won't.
The .a will be built against the set of libraries present
in that distribution, and so will probably be full of version
references and other issues - for example where the host is
glibc 2.4 or greater, almost all static archives will have
references to the stack check routines which are not available
to LSB conforming applications until LSB 4.0.
So for this particular case, while I'm curious why this
technique is being used, it's not going to be something
that will work with LSB anyway.
More information about the lsb-discuss