| | | Question | | The ldd command does not output the full list of shared libraries or shared objects when one is not found. The error message contains "Cannot find" in the output but never lists the name of the object which could not be found. This problem was identified and an APAR for AIX 5.3 was created. The APAR is IY87076. However, this APAR was closed as "Fixed In Next Release" and AIX 5.3 does not have an official fix available. | | | |
|
| Cause |
| The cause of the problem is a missing output formatter in the error message catalog for the ldd command. |
| |
|
| Answer |
The following is a simple work around that can be used to see the missing shared library/object:
While in the Korn shell, issue the following command
export LANG=C
Then re-issue the ldd command.
Sample output of before and after the change to ldd:
BEFORE:
ldd myprogram
myprogram needs:
/usr/lib/libc.a(shr.o)
libB/libmyshr.a(shr.o)
/unix
/usr/lib/libcrypt.a(shr.o)
Cannot find
AFTER:
ldd myprogram
myprogram needs:
/usr/lib/libc.a(shr.o)
libB/libmyshr.a(shr.o)
/unix
/usr/lib/libcrypt.a(shr.o)
ldd: cannot find libyourshr.a(shr.o) |
| |
|