1751786 Members
4988 Online
108781 Solutions
New Discussion

Java

 
dwd13
Occasional Visitor

Java

HP SIM 7.1 install on Linux.  Post install verfication with mxinitconfig -l turns up the following java related error:

 

mxinitconfig: error while loading shared libraries: libjvm.so: cannot open shared object file: No such file or directory.

 

 

I just can't seem to get around it.  I even installed the java version that come with the install.  Any suggestions on next step would be greatly appreciated.   

 

 

5 REPLIES 5
Dennis Handly
Acclaimed Contributor

Re: Java

>libjvm.so: cannot open shared object file: No such file or directory.

 

Have you tried setting LD_LIBRARY_PATH to point to the directory of that shlib?

Matti_Kurkela
Honored Contributor

Re: Java

Disclaimer: I have no experience on HP SIM, but plenty on resolving library issues in general.

 

You left out some rather essential basic information.

What's the name and version of your Linux distribution? 64-bit or 32-bit?

 

If you cd to the directory that contains the mxinitconfig command and run "ldd mxinitconfig | grep libjvm", what is the output?

 

If it says "libjvm.so => not found", then mxinitconfig requires libjvm.so to be findable using one of the paths listed either in /etc/ld.so.conf (or /etc/ld.so.conf.d/*.conf in newer distributions), or in LD_LIBRARY_PATH environment variable.

 

If there is no output at all, then mxinitconfig may be a script, or a binary that loads the Java libraries dynamically only after it's started executing. I would guess that JAVA_HOME would be the standard environment variable used to find the Java libraries in that case.

 

If mxinitconfig is a script, the PATH environment variable might be relevant too: is mxinitconfig finding the right version of Java, instead of some other version that might have been installed by default at OS installation time? If you run "java -version" in the session you're using to start mxinitconfig, does it report: a) the Java version that came with the SIM install, b) some other Java version, c) that "java" cannot be found, d) something else? If the answer is anything other than a), you may have to tweak your PATH.

 

Is the JAVA_HOME environment variable configured correctly in the session you're using to start mxinitconfig?

MK
dwd13
Occasional Visitor

Re: Java

Thank you for the reply.  This is a 64bit RHEL 6 install.  I was able to add a java.conf file to the ld.conf.d directory and sussessfully run the scritp however not i'm getting the following related error about not being able to find libverify.so. yet all seem to be visible. 

 

mxinitconfig: error while loading shared libraries: libverify.so: cannot open shared object file: No such file or directory

 

# ldd mxinitconfig |grep libverify.so
libverify.so => not found
[# ldd mxinitconfig |grep libjvm.so
libjvm.so => /opt/mx/jre1.6.0_27/lib/i386/server/libjvm.so (0x00df1000)
# java -version
java version "1.6.0_27"
Java(TM) SE Runtime Environment (build 1.6.0_27-b07)
Java HotSpot(TM) Server VM (build 20.2-b06, mixed mode)

 

 

 

Dennis Handly
Acclaimed Contributor

Re: Java

What do these show?

file mxinitconfig

file /opt/mx/jre1.6.0_27/lib/i386/server/libjvm.so

 

Do you have permissions to access libjvm.so?

 

Matti_Kurkela
Honored Contributor

Re: Java

> libjvm.so => /opt/mx/jre1.6.0_27/lib/i386/server/libjvm.so (0x00df1000)

 

Hmm, looks like the mxinitconfig command is a 32-bit binary and thus using a 32-bit version of the Java library.

 

On my 64-bit test system, libverify.so is located at $JAVA_HOME/jre/lib/amd64/libverify.so. Respectively, your version of Java should have it at /opt/mx/jre1.6.0_27/lib/i386/libverify.so.

 

You might add /opt/mx/jre1.6.0_27/lib/i386 to your /etc/ld.so.conf.d/java.conf file too.

MK