测试环境:
ubuntu18.04 matlab:R2018b cuda:10.0+cudnn7.6.5 opencv:3.4.4 gcc/g++:7.5.0
编译matcaffe还算正常:
make mat MEX matlab/+caffe/private/caffe_.cpp 使用 'g++' 编译。 警告: 您使用的 gcc 版本为 '7.5.0'。不支持该版本的 gcc。MEX 当前支持的版本为 '6.3.x'。有关当前支持的编译器列表,请参阅: https://www.mathworks.com/support/compilers/current_release。 MEX 已成功完成。
但是make mattest时候报下面错误
MEX 文件 '/home/fut/ai/caffe/matlab/+caffe/private/caffe_.mexa64' 无效: /usr/local/lib/libopencv_imgcodecs.so.3.4: undefined symbol: _ZN2cv6detail17check_failed_autoEmmRKNS0_12CheckContextE。
出错 caffe.set_mode_cpu (line 5) caffe_('set_mode_cpu');
出错 caffe.run_tests (line 6) caffe.set_mode_cpu(); 这个错误我尝试了很多办法都是以失败告终,唯一讨论比较多的在这个issue :
https://github.com/BVLC/caffe/issues/3934
虽然失败了,但是后续我会继续研究,现在博客存档。如果有有解决过这个问题大佬,可以下方评论留言。