[prev in list] [next in list] [prev in thread] [next in thread] 

List:       glibc-help
Subject:    Tell gcc/glibc not to use symbols higher than X.Y
From:       pakhuchiy () gmail ! com (Yura Pakhuchiy)
Date:       2011-11-23 3:45:00
Message-ID: 1322019892.1796.19.camel () yura-tl
[Download RAW message or body]

On Tue, 2011-11-22 at 11:49 -0500, Carlos O'Donell wrote:
> On 11/22/2011 11:45 AM, Yura Pakhuchiy wrote:
> > Will it be badly wrong to use LSB, but revert loader
> > to /lib/ld-linux.so.2 (having in mind that only glibc will be
> > shared-linked and everything else linked statically)? It seems to me
> > this will work on any LSB-compliant distro, but will not require LSB
> > loader to be installed. Or I misunderstood something?
> > 
> 
> Your question about reverting the loader doesn't make sense.

Sorry, why it does not make sense? It makes a lot of sense to me because
I do not want to use ld-lsb.so (since it is often not installed by
default).

Newer glibc versions are backward compatible with old ones (eg., I can
compile binary with glibc 2.4 and then run with glibc 2.11), so the
question is whether newer vanilla glibc is backward compatible with LSB
versions of glibc? If yes, then everything should work OK and I can
replace loader safely.

> Follow the LSB documentation and come back if you have a problem.

I would be happy to read it, but most of linux-foundation links
including LSB docs and SDK download links result in error message:

"This site is down for maintenance. We will be restoring service
shortly. Thank you for your patience.

The Linux Foundation"

> Note that the compiler helper routines are also shared e.g. libgcc.so,
> so it's not just glibc. If you use C++ you also have libstdc++.so and
> exception handling to deal with.

I use only C. Looks like -static-libgcc gcc switch should help with
libgcc if there will be problems with shared version.

> If you call any network functions that use NSS then you are *not*
> statically linked and will call upon all the other libraries required
> to load and run NSS modules.

Yes, that is why I can not just make completely static binary (with
static glibc). But I do not use functions from NSS libs directly, they
are called by glibc, so this should not be a problem since system should
have matching glibc and NSS libs.

-- 
Best regards,
        Yura


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic