Issue with libstdc++.so.6

243 visualizaciones (últimos 30 días)
Luis Martins
Luis Martins el 14 de Mzo. de 2017
Comentada: Mekus Meka el 19 de Sept. de 2024
Dear all,
I'm running matlab r2017a on a linux Fedora 25 machine and when I tried to call an external program that required the graphical interface I got the following error.
OpenSees: /usr/local/MATLAB/R2017a/sys/os/glnxa64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by OpenSees)
OpenSees: /usr/local/MATLAB/R2017a/sys/os/glnxa64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by OpenSees)
When I used a built-in function of matlab I also got a similar error
Error using waitbar (line 111) Improper arguments for waitbar.
Error in selectRecords (line 8) h = waitbar(0,'Processing records');
Caused by: Error using axes Can't load '/usr/local/MATLAB/R2017a/bin/glnxa64/libmwosgserver.so': /usr/local/MATLAB/R2017a/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /lib64/libGLU.so.1)
I checked using the terminal and I've got the latest version of that library installed
sudo dnf install libstdc++ Last metadata expiration check: 0:56:33 ago on Tue Mar 14 13:05:15 2017.Package libstdc++-6.3.1-1.fc25.x86_64 is already installed, skipping.Package libstdc++-6.3.1-1.fc25.i686 is already installed, skipping.Dependencies resolved.Nothing to do.Complete!
Could you please provide some guidance on how to solve this issue?
cheers L.M.
  1 comentario
Nader Fathy
Nader Fathy el 9 de Feb. de 2021
Hello,
I had a similar issue using CentOS 7 and the following solved the issue for me:
yum install compat-libstdc++-33.x86_64
Hope this helps!
Kindest Regards,
Nader Fathy

Iniciar sesión para comentar.

Respuesta aceptada

Archita P
Archita P el 20 de Mzo. de 2017
Editada: Archita P el 20 de Mzo. de 2017
This issue might be due to an incompatibility between the libstdc++ shipped with MATLAB and the libstdc++ shipped with the system that the other application was linked against.
"CXXABI_1.3.9 not found" error message indicates that the libstdc++.so.6 library that is included with MATLAB is missing ABI versions the system needs to draw graphical content.
This is caused because the version of this particular library packaged with MATLAB is older than the versions that come with newer Linux operating systems, which causes compatibility issues.
You can try the following workarounds: 1. Renaming the libstdc++.so.6 library file so that MATLAB cannot find it and is forced to use the system's version of the library. This file is located in matlabroot/sys/os/glnxa64 . Renaming it to libstdc++.so.6.old should suffice. (where "matlabroot" is root installation directory of MATLAB)
2. Forcing MATLAB to load the system version by setting the $LD_PRELOAD environment variable to the newer version of libstdc++.
Also, since you are trying to call an external program from MATLAB, this may be a third party issue. But, you can try setting the library paths correctly in 'LD_LIBRARY_PATH' system variable.
  14 comentarios
cr
cr el 8 de Feb. de 2023
This is brilliant. It worked. I had been banging my head for a day.
Mekus Meka
Mekus Meka el 19 de Sept. de 2024
Brilliant!!
"1. Renaming the libstdc++.so.6 library file" worked fine for me.

Iniciar sesión para comentar.

Más respuestas (3)

John Smith
John Smith el 12 de Jul. de 2019
You need to be careful with making sure you load the correct libstdc++6.
I use it to load "brainstorm", an EEG analysis program that requires the runtime Matlab library.
On Fedora 30, I solved it just as follows:
LD_PRELOAD="/lib64/libstdc++.so.6" path_and_name_of_programme_here
Also, note that you can check whether CXXABI_1.3.9 is included simply as follows:
strings /lib64/libstdc++.so.6 | grep CXXABI
You should then see that in the text part of that library. If it shows up, it means it should work.

S.Y Wang
S.Y Wang el 9 de Dic. de 2017
"import matlab.engine" should at the first line of the script.
  2 comentarios
Ramesh Babu
Ramesh Babu el 26 de Dic. de 2017
Hi,
I am still facing the same problem even after inducing the following line in .bashrc. Did I correctly entered the path in bashrc file?
#MATLAB
export PATH=/usr/local/MATLAB/R2017b/bin:$PATH
export MATLABCMD=/usr/local/MATLAB/R2017b/bin/glnxa64/MATLAB
alias matlab="LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/local/bin/matlab
When I open matlab I found the message pasted below and it opens normally.
$ matlab
/usr/local/MATLAB/R2017b/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6: version `CXXABI_1.3.9' not found (required by /usr/lib/x86_64-linux-gnu/libproxy.so.1) Failed to load module: /usr/lib/x86_64-linux-gnu/gio/modules/libgiolibproxy.so
I am afraid will this affect processing?
Thanks
Ramesh
BRSC User
BRSC User el 9 de Abr. de 2020
See suggested solution above.

Iniciar sesión para comentar.


Luis Rosety
Luis Rosety el 16 de Mayo de 2022
I had the same problem with Kubuntu 22.05 and the solution was what was posted in askubuntu.com:
  1. Star Matlab with
matlab -softwareopengl
2. Once in Matlab, run the command
opengl('save','software')

Categorías

Más información sobre Startup and Shutdown en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by