genleo
03-02-2012, 02:50 AM
Hi all,
I've the following problem:
Install my application on SUSE Linux Enterprise Server 11 Service Pack 1 Version 11.1.1.1 with x86_64 architecture and jre 1.6 64 bit. At the end of the installation (post-installation) a custom code action is launched with my java class that invokes a c library (.so) through JNI.
This library depends on another library and both of them are installed in installation phase in a lib directory. The LD_LIBRARY_PATH is correctly set to this lib directory before installation.
The error I get is:
class myClassAction.install() Unexpected Fatal Error:
java.lang.UnsatisfiedLinkError: /mypath/lib/libTwo.so: libOne.so: cannot open shared object file: No such file or directory
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
...
I replaced the lib names with libOne.so and libTwo.so.
ldd on libTwo returns the referenc to libOne.so at the correct path.
Another strange thing is: if I create the lib directory (empty) before the installation, all works correctly.
Any idea?
Thanks
Gennaro
I've the following problem:
Install my application on SUSE Linux Enterprise Server 11 Service Pack 1 Version 11.1.1.1 with x86_64 architecture and jre 1.6 64 bit. At the end of the installation (post-installation) a custom code action is launched with my java class that invokes a c library (.so) through JNI.
This library depends on another library and both of them are installed in installation phase in a lib directory. The LD_LIBRARY_PATH is correctly set to this lib directory before installation.
The error I get is:
class myClassAction.install() Unexpected Fatal Error:
java.lang.UnsatisfiedLinkError: /mypath/lib/libTwo.so: libOne.so: cannot open shared object file: No such file or directory
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
...
I replaced the lib names with libOne.so and libTwo.so.
ldd on libTwo returns the referenc to libOne.so at the correct path.
Another strange thing is: if I create the lib directory (empty) before the installation, all works correctly.
Any idea?
Thanks
Gennaro