您的位置:首页 > 编程语言 > MATLAB

caffe编译matlab出错 gcc版本过高需要降级

2017-03-27 16:48 525 查看
编译matlab是会遇到错误,由于matlab版本不同而支持的编译器版本不同,所以会出现问题。
Matlab 2014a(2015a)的版本是支持版本4.7.x所以在使用matlab调用mex文件的时候,基本上都会报错,根据报错信息,考虑如下两步解决方案。

1. 降级安装gcc/g++版本为4.7.x
(1). 下载gcc/g++ 4.7.x

$ sudo apt-get install -y gcc-4.7
$ sudo apt-get install -y g++-4.7


(2). 链接gcc/g++实现降级

$ cd /usr/bin
$ sudo rm gcc
$ sudo ln -s gcc-4.7 gcc
$ sudo rm g++
$ sudo ln -s g++-4.7 g++


2. 暴力引用新版本GLIBCXX_3.4.20
$ sudo cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.20
/usr/local/MATLAB/R2014a/sys/os/glnxa64/libstdc++.so.6.0.20 (libstdc++.so.6.0.20的版本,可能因为系统不同而不同,使用最新的就可以了。)

目录切换到 /usr/local/MATLAB/R2014a/sys/os/glnxa64/ ,非常重要!

$ sudo mv libstdc++.so.6 libstdc++.so.6.backup (仅仅是备份,可以不操作)。
$ sudo ln -s libstdc++.so.6.0.20 libstdc++.so.6
$ sudo ldconfig -v


通过命令“strings /usr/local/MATLAB/R2014a/sys/os/glnxa64/libstdc++.so.6 | grep GLIBCXX_” 可以看一下,
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: