[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: binary-or-shlib-defines-rpath



Hamish Moffatt <hamish@debian.org> writes:

> On Mon, Feb 18, 2002 at 01:00:44AM +0100, Kjetil Torgrim Homme wrote:
> > ldconfig generates ld.so.cache.  ld.so.cache is used by ld.so to know
> > which paths should be used.  Please note that this filtering mechanism
> > is crucial when RPATH isn't used, since there is only one ordering of
> > paths for all binaries.  (This filtering is not done on RPATH
> > currently.  That feature won't be necessary until libc actually
> > changes major version.)
> 
> OK, I see. As long as no binaries have hard-coded paths (RPATH)
> to libc, why would ldconfig need to change?

If an application uses libc6 and libslang (say), it will break when
libslang is recompiled against libc7.  Therefore the libc6 version of
libslang needs to retained in a libc6 specific directory for backwards
compatibility, and ld.so needs to know that /lib contains libc7
libraries and should not be consulted for libraries for old libc6
binaries.  From a Red Hat system:

  $ cat /etc/ld.so.conf 
  /usr/local/lib
  /lib
  /usr/X11R6/lib
  /usr/kerberos/lib
  /usr/i486-linux-libc5/lib
  /usr/lib
  /usr/lib/qt-1.45/lib
  /usr/lib/qt-2.3.1/lib
  /usr/lib/wine

Notice the libc5.


Kjetil T.



Reply to: