Ubuntu16.04环境下MATLAB2016b中测试ECO算法libstdc++.so.6链接库问题

matlab2016b中mex编译依赖gcc4.9.x但是ubuntu16.04自带为gcc5.4.1,但是matlab版的卷积神经网络库matconvet编译需要gcc5.0以上。

如果顾及mex链接问题,给gcc降级就会出现很多函数找不到的情况。如下:

Ubuntu16.04环境下MATLAB2016b中测试ECO算法libstdc++.so.6链接库问题_第1张图片


如果不给gcc降级也能编译过,但会提示warning,说是mex不支持5.4.1,但是不影响运行,如下

Ubuntu16.04环境下MATLAB2016b中测试ECO算法libstdc++.so.6链接库问题_第2张图片


最后是运行问题,测试demo_ECO_HC正常,但是运行demo_ECO出错,如下:

Ubuntu16.04环境下MATLAB2016b中测试ECO算法libstdc++.so.6链接库问题_第3张图片


解决办法:

删掉matlab里面的libstdc++.so.6,寻找自己电脑的libstdc++.so.6并建立软链接。

cd /usr/local/MATLAB/R2016b/sys/os/glnxa64
ls
rm -rf libstdc++.so.6
sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 libstdc++.so.6

你可能感兴趣的:(Matlab)