On Fri, Feb 06, 2004 at 05:53:17PM +0100, Christoph Martin wrote:
> >>>>I am using Sophos for Linux which is linked against it's own library
> >>>>in /usr/local/Sophos/lib apparently with -R. libc6 Version
> >>>>2.3.2.ds1-10 would run the binary without a problem:
> >>>>
> >>>>ldd /usr/local/Sophos/bin/sweep
> >>>>       libsavi.so.3 => /usr/local/Sophos/lib/libsavi.so.3 (0x4001f000)
> >>>>       libc.so.6 => /lib/libc.so.6 (0x4016f000)
> >>>>       libpthread.so.0 => /lib/libpthread.so.0 (0x402a1000)
> >>>>       /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
> >>>>
> >>>>After updating to Version -11. libsavi.so.3 would not be found anymore:
> >>>>
> >>>>ldd /usr/local/Sophos/bin/sweep
> >>>>       libsavi.so.3 => not found
> >>>>       libc.so.6 => /lib/libc.so.6 (0x4001c000)
> >>>>       /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
> >>>
> >>>
> >>>Output of readelf -l bin/sweep, please?
> >>> 
> > Thanks.  Unfortunately, I have realized that I actually wanted "readelf
> > -d" ....
> > 
> 
> Dynamic segment at offset 0x20078 contains 22 entries:
>   Tag        Type                         Name/Value
>  0x00000001 (NEEDED)                     Shared library: [libsavi.so.3]
>  0x00000001 (NEEDED)                     Shared library: [libc.so.6]
>  0x0000000f (RPATH)                      Library rpath: [/usr/local/lib]

Well, that's your problem then.  The RPATH says /usr/local/lib.  Are
you sure nothing else changed in your environment between these two
runs - LD_LIBRARY_PATH, the binary itself, /etc/ld.so.conf?  There's no
way that a binary with only that RPATH will look in
/usr/local/Sophos/lib.

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer


Reply via email to