On Mon, 10 May 2021, aotto wrote:
On 10.05.21 13:52, Marc Glisse wrote:
On Mon, 10 May 2021, aotto wrote:
I have an application with the following setup:
#1 executable cct build with -rpath /my/special/dir
#2 /my/special/dir has shared library libmyspecial.so as LOCAL-SOFT-LINK
to libmyspecial.so.4.0
problem dlopen /my/special/dir/libmyspecial.so fails with
libmyspecial.so.4.0 not found
start LD_DEBUG=all cct shows that -rpath is NOT used :
7205: file=libmyspecial.so.4.0 [0]; needed by
/my/special/dir/libtclreadline.so [0]
If libmyspecial.so.4.0 is used by libtclreadline.so, why not specify -rpath
when building libtclreadline.so?
Could you clarify who calls dlopen on what?
the libmyspecial is an automake file and libtool/automake has special -rpath
settings, the most important is that only
ONE -rpath is allowed and the one -rpath is set by automake.
How to convince you build system to do what you want is not really
relevant.
BUT even with an -rpath set looking into a shared library (objdump -p...)
display no DT_RUNPATH section at all.
It does for me...
--
Marc Glisse