【问题标题】:caffe libopencv_core DSO missing from command line命令行中缺少 caffe libopencv_core DSO
【发布时间】: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……我会告诉你修复的过程……

标签: opencv makefile caffe


【解决方案1】:

我也遇到了这个问题。您可以查看 Makefile.config 并检查 LIBRARY_DIRS 中的 opencv lib 目录。或取消注释以使用 pkg-config 指定 OpenCV 库路径。 USE_PKG_CONFIG := 1

【讨论】:

    猜你喜欢
    • 2016-01-20
    • 2019-01-12
    • 2016-11-17
    • 2014-07-28
    • 1970-01-01
    • 1970-01-01
    • 2017-02-25
    • 2021-05-18
    • 2016-02-18
    相关资源
    最近更新 更多