crashes after building from most recent sources
Kelly O'Hair
kelly.ohair at oracle.com
Mon Mar 21 09:11:34 PDT 2011
On Mar 20, 2011, at 11:07 AM, Greg Lewis wrote:
>> +JVMLIB = -Xlinker -rpath -Xlinker $(LIBDIR)/$(LIBARCH)/$(VM_NAME) -L$(LIBDIR)/$(LIBARCH)/$(VM_NAME) -ljvm
>
Normally you would not bake in a runpath/rpath directly to a particular JVM library instance.
It's not unusual to have shared libraries with a dependency on JVM but not have a runpath/rpath
directory that includes the JVM. This is normal.
The JVM library instances are usually the ones that dlopen/LoadLibrary these other shared libraries.
Since there are multiple JVM instances, you need to let the JVM drive, so to speak.
So for example, on Solaris you would see:
svc6<821> ldd /opt/java/jdk1.7.0/jre/lib/i386/libjava.so
libjvm.so => (file not found) <------------------------------
libverify.so => /opt/java/jdk1.7.0-b134/jre/lib/i386/libverify.so
libsocket.so.1 => /lib/libsocket.so.1
libnsl.so.1 => /lib/libnsl.so.1
libdl.so.1 => /lib/libdl.so.1
libc.so.1 => /lib/libc.so.1
libjvm.so => (file not found)
libmp.so.2 => /lib/libmp.so.2
libmd.so.1 => /lib/libmd.so.1
libscf.so.1 => /lib/libscf.so.1
libuutil.so.1 => /lib/libuutil.so.1
libgen.so.1 => /lib/libgen.so.1
libsmbios.so.1 => /usr/lib/libsmbios.so.1
libm.so.2 => /lib/libm.so.2
You would need to do this:
( setenv LD_LIBRARY_PATH /opt/java/jdk1.7.0-b134/jre/lib/i386/server && ldd /opt/java/jdk1.7.0/jre/lib/i386/libjava.so )
to get utilities like ldd to find libjvm.so.
-kto
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/bsd-port-dev/attachments/20110321/1987bea3/attachment.html
More information about the bsd-port-dev
mailing list