在编译caffe时报错
.build_release/lib/libcaffe.so:对‘cv::imread(cv::String const&, int)’未定义的引用
查资料说报错原因是,caffe默认使用opencv2.X版本,但是我安装的是opencv 3.1.0。
一改个有效的解决方案是,把opencv需要的lib添加到Makefile文件中,找到LIBRARIES(在PYTHON_LIBRARIES := boost_python python2.7 前一行)并修改为:
LIBRARIES += glog gflags protobuf leveldb snappy lmdb boost_system hdf5_hl hdf5 m opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs
编译之前,执行一下make clean。试了之后,还是编译出错。
另有方法说将Makefile.config中OPENCV_VERSION := 3取消注释,为毛查看Makefile.config文件时没注意这条指令是被注释掉的??!取消之后果然好使。
参考:
https://github.com/BVLC/caffe/issues/2348
https://blog.csdn.net/u011636440/article/details/82660697