【发布时间】:2017-08-09 15:35:50
【问题描述】:
CXX/LD -o .build_release/examples/cpp_classification/classification.bin
/usr/bin/ld: warning: libopencv_imgproc.so.3.2, needed by /usr/local/lib/libopencv_imgcodecs.so, may conflict with libopencv_imgproc.so.2.4
/usr/bin/ld: warning: libopencv_core.so.3.2, needed by /usr/local/lib/libopencv_imgcodecs.so, may conflict with libopencv_core.so.2.4
/usr/bin/ld: .build_release/examples/cpp_classification/classification.o: undefined reference to symbol '_ZN2cv6String10deallocateEv'
//usr/local/lib/libopencv_core.so.3.2: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Makefile:633: recipe for target '.build_release/examples/cpp_classification/classification.bin' failed
make: *** [.build_release/examples/cpp_classification/classification.bin] Error 1
当我使用 make all 命令编译 caffe 时,我不断收到此错误。 我在 Makefile 中添加了 opencv 库,并取消了在 Makefile.config 中设置 caffe 以使用 opencv3 的部分。 我用 -D BUILD_TIFF=ON 重新编译了opencv3,但仍然没有。
【问题讨论】:
-
你有两个版本的 opencv 安装 3.2 和 2.4 并且都指向 libopencv_imgcodecs.so symlic,你要么必须取消其中一个..特别是如果在你的 caffe Makefile 中你使用的是 opencv=3那么你必须删除 2.4,祝你好运
-
//usr/local/lib/libopencv_core.so.3.2 还要检查你的opencv包含目录是否有额外的/前面
-
@Eliethesaiyan 我已经放弃了,目前正在另一台机器上运行 caffe……我会告诉你修复的过程……