在linux上使用matlab时报错
/usr/local/MATLAB/R2015b/bin/glnxa64/../../sys/os/glnxa64/libstdc++.so.6: version 'CXXABI_1.3.8' not found
下面提供解决办法
1. 沿着这个路径可以找到 libstdc++.so.6,如果实在找不到也可以在根目录下运行如下语句
find / -name "libstdc++.so.*"
查询结果会列出所有以libstdc++.so为首的文件路径
2. 顺利找到该文件后,执行查询
strings /usr/local/MATLAB/R2015b/sys/os/glnxa64/libstdc++.so.6 | grep CXXABI (这是我的路径,大家根据自己的路径切换即可)
列出所有的CXXABI,发现缺少CXXABI_1.3.8,也就是上面报错的问题所在
3. 从网上下载 libstdc++.so.6.0.21(其他包含CXXABI_1.3.8的版本皆可,不确定的话使用和上面相同的方法查询是否包含CXX_1.3.8即可)
4. 把文件拷贝到 /usr/local/MATLAB/R2015b/sys/os/glnxa64 目录下,MATLAB中这个文件目录是受保护的,所以可以先修改文件夹权限再把文件拷贝进去
sudo chmod 777 /usr/local/MATLAB/R2015b/sys/os/glnxa64
5. 删除原来的符号连接
rm -rf libstdc++.so.6
6. 建立新的符号连接
ln -s libstdc++.so.6.0.21 libstdc++.so.6
7. 再次执行查询
strings /usr/local/MATLAB/R2015b/sys/os/glnxa64/libstdc++.so.6 | grep CXXABI
发现CXXABI_1.3.8包含在内,问题解决