Stale files in /usr/X11/bin ?

Yury Tarasievich grog at grsu.by
Sat Mar 26 07:41:33 PST 2005


Joerg Sonnenberger wrote:
On Fri, Mar 25, 2005 at 10:22:55AM +0100, Jeroen Ruigrok/asmodai wrote:

-On [20050325 09:22], Yury Tarasievich (grog at xxxxxxx) wrote:

BTW, is there any standard method to force linking against specific 
revision of shared lib, so one could generally link against lib.so, 
being symlink to lib.so.x, vs. lib.so.x itself?


Do you want to link directly against lib.so instead of lib.so.x? That's
broken.
Yes, that's what I'd want to do. Shame it's broken.

ELF annex the ELF loader does not cater for this.
Precisely.
ELF looks at the libname.so entries in its cache.  These are typically
symbolically linked to the highest versioned libname.so.N.
Nope. The dynamic loader looks up the Shared Object Name in the cache
or tries it via some special patterns as file name in standard locations.
<...>
Exactly. The dynamic linker doesn't care at all about version numbers.
I'm out of my depth here, but what is, then, when binary has inside it 
references to lib...so.<n>?

No standard way short of changing symbolic links, but this also influences
run-time behaviour.


Not really. The libc.so --> libc.so.4 link is used by the _static_ linker,
You could use varsyms to change the behaviour on a per-case base.
Sorry, I don't really know what the varsym is.

--regards






More information about the Bugs mailing list