Matlab freeze on splash screen

Hello

When openSUSE 13.1 released last year, I installed Matlab R2012b on a fresh installation. It worked out of the box, no further action necessary. After I upgrading to an SSD on my laptop, I had to reinstall openSUSE, which I did and updated, then installed Matlab again, and also activated it again successfully. Now, Matlab fails to start properly and freezes with the splash screen shown, no GUI interface is loaded.

As mentioned, Matlab does install successfully, and activates successfully if immediate activation is selected in the installer options. If installed without activation, and the activation script is called afterwards, it also fails to load the activation GUI. I can however run Matlab in the command line interface using the -nodesktop argument. Probing its Java version yields

>> version -java

ans =

Java 1.6.0_17-b04 with Sun Microsystems Inc. Java HotSpot(TM) 64-Bit Server VM mixed mode

which is the JRE that comes with this Matlab version. My currently installed Java is

$ java -version
java version "1.7.0_51"
OpenJDK Runtime Environment (IcedTea 2.4.4) (suse-24.13.5-x86_64)
OpenJDK 64-Bit Server VM (build 24.45-b08, mixed mode)

although as far as I know, these two should not affect each other.

I have tried forcing Matlab to my installed Java with

export MATLAB_JAVA=/usr/lib64/jvm/*****/jre

where the ***** are the various openjdk and jre folders. Matlab (terminal interface) does pick up this Java version, but it still does not load properly.

I have tried a simple plot command from the console interface, which does show the figure window with the plot drawn. Trying to run Simulink however, yields

>> simulink
Exception in thread "main" java.lang.NoClassDefFoundError: com/mathworks/mlwebservices/segv/V1/ws/ReportSegvListener
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$000(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Caused by: java.lang.ClassNotFoundException: com.mathworks.mlwebservices.segv.V1.ws.ReportSegvListener
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
        ... 12 more
Could not find the main class: com.mathworks.fatalexit.FatalExitFrame.  Program will exit.

At this moment I am pretty stumped. I have verified my install medium, and it does successfully run on both Ubuntu 14.04 and Arch Linux, both fully updated. I do find it strange that it worked on my openSUSE 13.1 install about a year ago, and now suddenly does not. I have however not run it in the past few months, so I do not know if a recent update broke it.

Any help in getting it to work is greatly appreciated.

I’ve got a Matlab R2012b 64bit install that lives on a volume exported via NFS and is mounted on any machine someone wants to run Matlab on. I just tried it on openSUSE 13.1 64bit and it seems fine.

If you run Matlab from a command prompt is there any output?

There’s three releases of Matlab since R2012b, does your licensing allow you use a newer version? R2013b works for me on openSUSE 13.1 64bit. I don’t have an R2014a install to try.

Hey mikewillis, thanks for the response. I apologise for my very much delayed reply, and also kind-of reviving this old thread.

I have since moved my production laptop to Arch Linux (risky I know) since it worked properly on my colleagues’ computers as mentioned in my original post. Interestingly enough, I ran into more or less the same problem. After some experimentation, I found that the solution is to run the installer via kdesu instead of running it as the root user directly. I think the problem might be the passing of environment variables, and that GNOME/Unity might be doing it differently than the particular version of KDE that I was running.

So the solution, as a regular user:


kdesu /path/to/dir/install &

Although this solution worked in Arch Linux, as the problem was similar in openSUSE, I’m marking the thread as solved.