Hello,

I have a problem with shared libraries that need a
shared library by themselves (FreeBSD-3.4-STABLE):

imagine a shared library `libfoo.so'. This library depends
on the X11 lib and therefore has a `libX11.so.6' NEEDED entry.
On this system `libX11.so.6' was installed into '/vol/X11/lib',
so `libfoo.so' has also an RPATH of '/vol/X11/lib'.
`libfoo.so' itself was installed into '/vol/foo/lib'.

Now, I want to link a binary against `libfoo.so': My
object code does NOT contain a reference to `libX11.so',
so linking with '-L/vol/foo/lib -R/vol/foo/lib -lfoo'
should be correct. But the linker fails to resolve
the references of `libfoo.so' to libX11 unless I
specify '-L/vol/X11/lib -R/vol/X11/lib'. I think this
should be considered as a bug. Any other opinions?

BTW, how does the FreeBSD runtime linker uses RPATHs it finds
in shared libraries? Does it use an RPATH only for satisfying
the needs of the library in which the RPATH was found, or
are all RPATHs concatenated?

  Björn Fischer



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

Reply via email to