Ubuntu: “JRE Libraries are missing or not compatible” error message


When trying to install SPSS (a statistical analysis package) using: sudo ./SPSS_23.0_LNX.bin, I get the following:

Preparing to install...

Extracting the JRE from the installer archive...

Unpacking the JRE...

Extracting the installation resources from the installer archive...

Configuring the installer for this system's environment...

Launching installer...

JRE libraries are missing or not compatible.... Exiting....

OpenJDK 6, OpenJDK 7, Oracle Java 7, and Oracle Java 8 are all installed on my machine. I tried the install with each of them as default, successively ( I did set the JAVA_HOME environment to the appropriate path each time). Every time I got the the same output and error message.

It looks that the JRE is packaged in the installer, which would mean that there is something wrong with the libraries in the packaged JRE. Then there wouldn't be much I could do about it. Does that make sense?



With Java based applications which do not come as a package from the software channels in Ubuntu, you will most likely have to define JAVA_HOME dir, because those apps will not know about the "default" java deb package. For example on the command line :

export JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-amd64"  

The SPSS seems to be software made by IBM. With the command :

ldd -v  ./SPSS_23.0_LNX.bin  

you should be able to see which libraries it wants to use.

Perhaps it wants to use IBM Java.

IBM Java


I found this solution and it works.

If you want the short version, just add this to the line after you type your installer. For me, I was installing a .bin package. I was using the line:

sudo ./INSTALLER.bin

Try this:

sudo ./INSTALLER.bin LAX_VM path_to_java_on_your_machine

So, for me, the entire command was:

sudo ./LiberoSoC_v11.8Linux.bin LAX_VM /usr/lib/jvm/java-8-oracle/jre/bin/java

I needed the sudo so the actual installer could write to /usr/local once it started.

To see what is going on with the LAX tool, set the environment variable LAX_DEBUG with

export LAX_DEBUG=true

Now you can see that the Lax_vm is trying to use the locally installed jre in /tmp, but for some reason that won't work on all linux platforms. By telling it you use the one installed on your system, you should at least get the installer to start. After that, you are on your own.

Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Next Post »