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

19 次查看(过去 30 天)
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 个评论
Martijn
Martijn 2017-10-4
编辑:Martijn 2017-10-4
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.

请先登录,再进行评论。

采纳的回答

Martijn
Martijn 2017-10-4
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 个评论
Con Savas
Con Savas 2017-12-18
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

请先登录,再进行评论。

更多回答(3 个)

Amose Yao
Amose Yao 2017-1-21
Did you solve this problem? How? thx~

Khurram Aziz
Khurram Aziz 2019-9-29
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 2020-4-3

类别

Help CenterFile Exchange 中查找有关 Startup and Shutdown 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by