caffe使用cmake编译问题及解决办法

本文解决Caffe使用cmake编译时遇到的与OpenCV相关的链接错误问题,通过调整系统路径和配置文件,确保正确引用OpenCV库,实现Caffe的成功编译。

caffe使用cmake编译问题及解决办法

1 问题:出现“/usr/lib/x86_64-linux-gnu/libunwind.so.8: undefined reference to lzma_index_size@XZ_5.0' /usr/local/lib/libopencv_imgcodecs.so.3.1.0: undefined reference toTIFFReadDirectory@LIBTIFF_4.0’
…/lib/libcaffe.so.1.0.0: undefined reference to `google::protobuf::DescriptorPool::FindFileByName(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) const’ ”等错误

原因:系统存在多个opencv库导致的caffe运行异常
解决办法:先确定系统正确安装了opencv,再将anaconda环境配置屏蔽,即将
export PATH="/home/xjj/anaconda2/bin:${PATH}"改为

#export PATH="/home/xjj/anaconda2/bin:${PATH}"
重新进入build目录
cmake …
make -j4

后可能会出现如下错误
“…/lib/libcaffe.so.1.0.0: undefined reference to cv::VideoWriter::write(cv::Mat const&)' ../lib/libcaffe.so.1.0.0: undefined reference tocv::VideoWriter::isOpened() const’
…/lib/libcaffe.so.1.0.0: undefined reference to `cv::VideoWriter::~VideoWriter()’

原因:caffe找不到opencv路径
解决办法:在 “project(Caffe C CXX)” 下面加入如下行
find_package( OpenCV REQUIRED )
以找到opencv。
重新编译,成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值