libawt.so: UnsatisfiedLinkError. Please help!

Hi!

Thanks in advance for the help!

I am new to the Linux OS and would appreciate help solving this critical issue I am having.

The server configuration is:

AMD Opteron 170, Redhat EL 4.0-U3-64-ES, Tomcat 5.0.28, apache httpd 2.0.52 and java sdk 1.4.2_12

The problem occurs when I call the 揑mageIO.read(newPic)? The following exception is thrown:

java.lang.UnsatisfiedLinkError: /usr/java/j2sdk1.4.2_12/jre/lib/i386/libawt.so:

libXp.so.6: cannot open shared object file: No such file or directory

at java.lang.ClassLoader$NativeLibrary.load(Native Method)

at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1586)

at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1503)

at java.lang.Runtime.loadLibrary0(Runtime.java:788)

at java.lang.System.loadLibrary(System.java:834)

at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50)

at java.security.AccessController.doPrivileged(Native Method)

at java.awt.image.ColorModel.loadLibraries(ColorModel.java:188)

at java.awt.image.ColorModel.(ColorModel.java:196)

at javax.imageio.ImageTypeSpecifier$Packed.(ImageTypeSpecifier.jav

a:275)

It seems like libawt.so is not linked correctly.

]#ldd /usr/java/j2sdk1.4.2_12/jre/lib/i386/libawt.so

linux-gate.so.1 => (0xffffe000)

libmlib_image.so (0xf7ce2000)

libjvm.so => not found

libXp.so.6 => not found

libXt.so.6 => not found

libXext.so.6 => not found

libXtst.so.6 => not found

libX11.so.6 => not found

libm.so.6 => /lib/tls/libm.so.6 (0xf7cb3000)

libdl.so.2 => /lib/libdl.so.2 (0xf7caf000)

libjava.so (0xf7c91000)

libc.so.6 => /lib/tls/libc.so.6 (0xf7b66000)

/lib/ld-linux.so.2 (0x56555000)

libjvm.so => not found

libjvm.so => not found

libverify.so (0xf7b57000)

libnsl.so.1 => /lib/libnsl.so.1 (0xf7b41000)

libjvm.so => not found

However, the libXt.so.6 and others ARE on the server already (in /usr/X11R6/lib64). But it does not work. My initial guess is that Java is looking for the 32bit version of the library (maybe in /usr/X11R6/lib). I tried installing the Blackdown Java for x48_64, but same thing. Also set the LD_LIBRARY_PATH, ld.conf.so?still no luck?

[2389 byte] By [Fierroa] at [2007-10-3 2:56:09]
# 1

Have you tried any recent update of 5.0 for amd64 or 32-bit? I don't think we support 1.4.2 on 64-bit ES4.

Another thing is try to use headless toolkit. Was tomcat started with -Djava.awt.headless=true ? The headless toolkit should not attempt to use any of X libraries.

Thanks,

Dmitri

Java2D Team

dmitri_trembovetskia at 2007-7-14 20:45:18 > top of Java-index,Security,Cryptography...
# 2
I'm also having this problem ... as are many others based on postings I've seen. I need to deploy a 1.4.2 application within a week. Can you confirm whether or not 1.4.2 is supported on ES4? Or do I have to rewind the OS to ES3?
dthomson@aliniona at 2007-7-14 20:45:18 > top of Java-index,Security,Cryptography...
# 3
Both RHES 4 and RHES 3 are supported in 32 bit mode only by 1.4.2.Full list of supported configurations: http://java.sun.com/j2se/1.4.2/system-configurations.htmlfor 5.0 http://java.sun.com/j2se/1.5.0/system-configurations.html
neigora at 2007-7-14 20:45:18 > top of Java-index,Security,Cryptography...
# 4
It's fixed! The loader was looking for the 32-bit version of the library.So i installed the 32bit library with up2date --arch=i386 xorg-x11-deprecated-libs
Fierroa at 2007-7-14 20:45:18 > top of Java-index,Security,Cryptography...