openjdk team mailing list archive
-
openjdk team
-
Mailing list archive
-
Message #08356
[Bug 1027122] Re: JNI applications fail because shared libraries cannot be found
Hi Nikolaus,
Sorry you're having troubles. Can you explain how you installed mdsplus?
I am unable to reproduce this using Ubuntu 10.04 LTS and following the
instructions for Ubuntu11 and stable in
http://www.mdsplus.org/index.php/Latest_Ubuntu_Packages. Also, attempts
to do simpler things with JNI didn't show anything like this.
Can you strace the open() calls to see what path it's looking for for
libhpi.so, like so:
strace -o /tmp/jScope.strace -f -e trace=open jScope
That will put the output of the strace in /tmp/jScope.strace.
Another possibility path for debugging would by to modify the jScope
shell script to add '-verbose:jni' to the $java invocation, and
capturing the output. That said, if I did not have libsybdb.so.5
installed, I got a similar error for libsybdb.so.5, and the verbose jni
information did not give anything additionally relevant to it.
I also note that the path of libhpi.so did not change between the two
versions of openjdk-6-jre-headless.
That said, I note that
http://h1svr.anu.edu.au/wiki/Hardware/Computers/prl45 reports a similar
error finding libhpi.so on Ubuntu 12.04 LTS. Due to multiarch changes in
the distribution, I wonder if the patch that was added to openjdk-6 to
fix https://bugs.launchpad.net/ubuntu/+source/openjdk-6/+bug/737603 is
causing problems here.
Thanks.
** Changed in: openjdk-6 (Ubuntu)
Status: New => Incomplete
--
You received this bug notification because you are a member of OpenJDK,
which is subscribed to openjdk-6 in Ubuntu.
https://bugs.launchpad.net/bugs/1027122
Title:
JNI applications fail because shared libraries cannot be found
Status in “openjdk-6” package in Ubuntu:
Incomplete
Bug description:
The update from OpenJDK 6b20-1.9.13-0ubuntu1~10.04.1 to
6b21.2-2ubuntu0.10.04.1 in Lucid broke JNI applications. Attempts to
run a JNI application now crash with:
$ jScope
Load library java.lang.UnsatisfiedLinkError: /opt/mdsplus/lib/libJavaMds.so: libhpi.so: cannot open shared object file: No such file or directory
java.lang.UnsatisfiedLinkError: /opt/mdsplus/lib/libJavaMds.so: libhpi.so: 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:1750)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1675)
at java.lang.Runtime.loadLibrary0(Runtime.java:840)
at java.lang.System.loadLibrary(System.java:1047)
at jScope.LocalDataProvider.<clinit>(LocalDataProvider.java:192)
at java.lang.Class.forName0(Native Method)/
at java.lang.Class.forName(Class.java:186)
at jScope.jScopeWaveContainer.SetDataServer(jScopeWaveContainer.java:1360)
Downgrading all packages created by the OpenJDK source package to
6b20-1.9.13-0ubuntu1~10.04.1 fixes the problem.
libhpi.so is located in
/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/native_threads/libhpi.so, so
the problem can be temporarily fixed by setting
LD_LIBRARY_PATH=/usr/lib/jvm/java-6-openjdk/jre/lib/amd64/native_threads/.
However, this path is of course very dependent on the used JRE, so it
needs to be set by java itself.
ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: openjdk-6-jre-headless 6b24-1.11.3-1ubuntu0.10.04.1
ProcVersionSignature: Ubuntu 3.0.0-23.38~lucid1-server 3.0.36
Uname: Linux 3.0.0-23-server x86_64
Architecture: amd64
Date: Fri Jul 20 11:11:48 2012
ProcEnviron:
PATH=(custom, user)
LANG=en_US.UTF-8
SHELL=/bin/bash
SourcePackage: openjdk-6
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openjdk-6/+bug/1027122/+subscriptions
References