Can't reload '/usr/loca​l/matlab-r​es.2015b/b​in/glnxa64​/libmwosgs​erver.so'

14 views (last 30 days)
I use "MatLab" in an old SUN workstation in Linux environment. It is too old to run "MatLab 2015b" and cant not be upgraded. So I use "ssh -XC" to connect to a new Linux server and run "Matlab 2015b". It works normally when I do computation or run a matlab script without plot. However, when I try to generate a figures, it shows error message as:
Can't reload '/usr/local/matlab-res.2015b/bin/glnxa64/libmwosgserver.so'
for example:
>> clear all;
>> x = linspace(0,2*pi,1001);
>> y = sin(x);
>> plot(x,y)
Error using gca
While setting the 'Parent' property of 'Axes':
Can't reload '/usr/local/matlab-res.2015b/bin/glnxa64/libmwosgserver.so'
Error in newplot (line 68)
ax = gca(fig);
I did check the file, "libmwosgserver.so" and it indeed in the fold. What is the problem and how to solve it?
Huang
  8 Comments
Martijn
Martijn on 4 Oct 2017
Edited: Martijn on 4 Oct 2017
While the basic idea of Joseph is correct, make MATLAB use the same libstdc++ version as your system, there is a slightly better option where you actually make MATLAB use your system's libstdc++ itself (which also then addresses Ulrich's comment). See the answer I posted below.

Sign in to comment.

Accepted Answer

Martijn
Martijn on 4 Oct 2017
This issue may be related to a version conflict between system libraries and the libstdc++ version included with MATLAB. You may be able to resolve this issue by making MATLAB use your system's libstdc++ instead of the libstdc++ shipped with MATLAB. While you can accomplish this in the way described by Joseph above, there is a better way:
From a Linux shell (with appropriate permissions to make modifications in your MATLAB installation, i.e. use "sudo" if needed or work with your system administrator):
1. cd into your MATLAB sys/os/glnxa64 directory.
2. Create a new directory named "old":
mkdir old
3. Move libstdc++* into the old directory:
mv libstdc++* old
Now MATLAB no longer can find its own libstdc++ and it will automatically switch to working with your system's libstdc++.
  2 Comments
Con Savas
Con Savas on 18 Dec 2017
Hi,
I have the same issue with MatLab 2016b on a RHEL 7.4 machine. I tried moving libstdc++* to directory old but I now get the following errors when I try to run MatLab
MATLAB is selecting SOFTWARE OPENGL rendering. /usr/local/MATLAB/R2016b/bin/glnxa64/MATLAB: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/local/MATLAB/R2016b/bin/glnxa64/libmwi18n.so)
There are about 20 similar errors for other functions not found.
The computer has an NVIDIA graphics card which appears to have the drivers loaded ok.
any help appreciated Thanks

Sign in to comment.

More Answers (3)

Amose Yao
Amose Yao on 21 Jan 2017
Did you solve this problem? How? thx~

Khurram Aziz
Khurram Aziz on 29 Sep 2019
To those people having issues related to rendering after the above fix, try starting matlab with the -softwareopengl option. I was getting the same error and starting with this option fixed it - I'm not tech savvy enough to know why though.

Sergio Duarte
Sergio Duarte on 3 Apr 2020
  1 Comment
Walter Roberson
Walter Roberson on 4 Apr 2020
That was a different bug related to TLS entries, and the error message for that bug always mentions "TLS".

Sign in to comment.

Categories

Find more on Introduction to Installation and Licensing in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!