1752861 Members
3963 Online
108790 Solutions
New Discussion юеВ

ld can`t open library

 
SOLVED
Go to solution
jose_luis_fdez_diaz
Occasional Advisor

ld can`t open library



Why does ld try to link "/rv/build/rv/rel/6_9/hpux110/hppa/ref/lib/libtibrv.sl" instead of "/home/tibae5/software/rvds/lib/libtibrvds.sl" ?


m3vmsa3.closedeb /tmp > cat kk.c

int main()
{}
m3vmsa3.closedeb /tmp > aCC -Wl,+s -L/home/tibae5/software/rvds/lib -ltibrvds kk.o
/usr/ccs/bin/ld: Can't open /rv/build/rv/rel/6_9/hpux110/hppa/ref/lib/libtibrv.sl
/usr/ccs/bin/ld: No such file or directory
m3vmsa3.closedeb /tmp > ll /home/tibae5/software/rvds/lib/libtibrvds.sl
-r-xr-xr-x 1 tibae5 tibco 1757184 Jan 29 2002 /home/tibae5/software/rvds/lib/libtibrvds.sl
m3vmsa3.closedeb /tmp > ll /rv/build/rv/rel/6_9/hpux110/hppa/ref/lib/libtibrv.sl
/rv/build/rv/rel/6_9/hpux110/hppa/ref/lib/libtibrv.sl not found
m3vmsa3.closedeb /tmp >




Thanks in advance,
Jose Luis


3 REPLIES 3
Dennis Handly
Acclaimed Contributor
Solution

Re: ld can`t open library

It is probably linking in libtibrvds.sl which has a dependent lib called libtibrv.sl.
Use chatr(1) on libtibrvds.sl to check.
jose_luis_fdez_diaz
Occasional Advisor

Re: ld can`t open library


That was the problem. It now compiles fine, but I have a new question: What is the meaning of the line:

/rv/build/rv/rel/6_9/hpux110/hppa/ref/lib/libtibrv.sl => /home/tibae5/software/tibrvAE5/lib/libtibrv.sl



m3vmsa3.closedeb /tmp > aCC -L/home/tibae5/software/rvds/lib -L/home/tibae5/tibco/tibrv/lib -ltibrvds kk.c
m3vmsa3.closedeb /tmp > ldd a.out
/usr/lib/libdld.2 => /usr/lib/libdld.2
/usr/lib/libc.2 => /usr/lib/libc.2
/usr/lib/libdld.2 => /usr/lib/libdld.2
/usr/lib/libc.2 => /usr/lib/libc.2
/usr/lib/libcl.2 => /usr/lib/libcl.2
/usr/lib/libisamstub.1 => /usr/lib/libisamstub.1
/usr/lib/libdld.2 => /usr/lib/libdld.2
/usr/lib/libm.2 => /usr/lib/libm.2
/usr/lib/libCsup.2 => /usr/lib/libCsup.2
/usr/lib/libstream.2 => /usr/lib/libstream.2
/usr/lib/libstd.2 => /usr/lib/libstd.2
/home/tibae5/software/rvds/lib/libtibrvds.sl => /home/tibae5/software/rvds/lib/libtibrvds.sl
/usr/lib/libpthread.1 => /usr/lib/libpthread.1
/usr/lib/libc.2 => /usr/lib/libc.2
/usr/lib/libxnet.2 => /usr/lib/libxnet.2
/usr/lib/libxti.2 => /usr/lib/libxti.2
/rv/build/rv/rel/6_9/hpux110/hppa/ref/lib/libtibrv.sl => /home/tibae5/software/tibrvAE5/lib/libtibrv.sl
/lib/libm.2 => /lib/libm.2
/lib/libpthread.1 => /lib/libpthread.1
/lib/libc.2 => /lib/libc.2
/lib/libxnet.2 => /lib/libxnet.2




Thanks for your help.

Regards,
Jose Luis

Dennis Handly
Acclaimed Contributor

Re: ld can`t open library

>What is the meaning of the line:
/rv/build/rv/rel/6_9/hpux110/hppa/ref/lib/libtibrv.sl => /home/tibae5/software/tibrvAE5/lib/libtibrv.sl

This ldd output says that the recorded path to libtibrv.sl has been changed due to SHLIB_PATH to the second path.