SUNW_1.21.2 not found

I have a sun box running solaris 9. I have thunderbird2 installed but when I run thunderbird2, I got this error and the process got killed.

gris{tranc}33: /tools/scripts/thunderbird2
Starting Thunderbird2 ...
gris{tranc}34: ld.so.1: thunderbird-bin: fatal: libc.so.1: version `SUNW_1.21.2' not found (required by file /usr/lib/libthread.so.1)
ld.so.1: thunderbird-bin: fatal: libc.so.1: open failed: No such file or directory
Killed

I installed the patch cluster but unable to resolve. Can anyone help me out of this. Thank much.

Does this help?

weird ld problem with libthread.so.1: libc.so.1 (SUNW_1.21.2) => (version not foun

I am a dummy in unix. Please point me in a little detail. Thanks

I know very little about your system and what you have on it.

It looks like a LD_LIBRARY_PATH issue.

Can you

(a) print your current setting for LD_LIBRARY_PATH

(b) find all copies of libc.* and libpthread.* on your system

(c) do ldd on the program that fails.

(a)

scythe{tranc}34: echo $LD_LIBRARY_PATH
/usr/dt/lib:/usr/openwin/lib:/usr/lib:/usr/lib/X11:/tools/NET/lib

(b)

I do a find for libc and libpthread, but output nothing.

(c)

scythe# ldd libc.so.1
libdl.so.1 => /usr/lib/libdl.so.1
/usr/platform/SUNW,Sun-Blade-100/lib/libc_psr.so.1

scythe# ldd /usr/lib/libthread.so.1
libc.so.1 => /usr/lib/libc.so.1
libdl.so.1 => /usr/lib/libdl.so.1
/usr/platform/SUNW,Sun-Blade-100/lib/libc_psr.so.1

Try again...

bash-2.05$ find / -name "libpthread.*" 2>/dev/null
/usr/lib/libpthread.so
/usr/lib/libpthread.so.1
/usr/lib/sparcv9/libpthread.so
/usr/lib/sparcv9/libpthread.so.1
/usr/share/man/sman3lib/libpthread.3lib
bash-2.05$ find / -name "libc.*" 2>/dev/null
/usr/lib/libc.so
/usr/lib/libc.so.1
/usr/lib/sparcv9/libc.so
/usr/lib/sparcv9/libc.so.1
/usr/lib/mdb/proc/libc.so
/usr/lib/mdb/proc/sparcv9/libc.so
/usr/lib/libp/libc.a
/usr/lib/libp/sparcv9/libc.so
/usr/lib/libp/sparcv9/libc.so.1
/usr/lib/libc.a
/usr/share/man/sman3lib/libc.3lib
/usr/4lib/libc.so.1.9
/usr/4lib/libc.so.2.9

Can you do ldd on a program that fails...., eg one of the newly installed ones that is balking.

I have something this time.

# find / -name "libpthread.*" 2>/dev/null
/usr/lib/libpthread.so
/usr/lib/libpthread.so.1
/usr/lib/sparcv9/libpthread.so
/usr/lib/sparcv9/libpthread.so.1
/usr/share/man/sman3lib/libpthread.3lib

# find / -name "libc.*" 2>/dev/null
/usr/lib/libc.so
/usr/lib/libc.so.1
/usr/lib/sparcv9/libc.so
/usr/lib/sparcv9/libc.so.1
/usr/lib/mdb/proc/libc.so
/usr/lib/mdb/proc/sparcv9/libc.so
/usr/lib/libp/libc.a
/usr/lib/libp/sparcv9/libc.so
/usr/lib/libp/sparcv9/libc.so.1
/usr/lib/libc.a
/usr/share/man/sman3lib/libc.3lib
/usr/4lib/libc.so.1.9
/usr/4lib/libc.so.2.9

Would you give me a hint of your question ? Don't know which to do

So the question is which set of libc/libpthread is

(a) the pair that your application is balking over

(b) the pair that you should actually be using.

You may have to start doing the folllowing....

  1. check the dates of the various libraries

  2. use "elfdump" to try and find the signature your program is needing.

So you do need to find the offending program that is failing, then keep on trying by changing LD_LIBRARY_PATH and testing with ldd until the program happily loads.

Thanks I will try that.