Caffe 安装,链接问题

Caffe installation, linking issue

我在caffe安装过程中遇到了以下问题: /usr/bin/ld: 找不到 -lopencv_imgcodecs

我构建了 opencv3.2,但我相信 linking cv2.cpython-36m-x86_64-linux-gnu.so 库存在问题。我尝试将它添加到 LD_LIBRARY_PATH 但它仍然失败并出现相同的错误。

我要在LD路径中cv2.cpython-36m-x86_64-linux-gnu.so做一个link吗?如果是,我应该在哪条路径中制作 link 。

这是输出的最后几行(错误消息):

CXX examples/mnist/convert_mnist_data.cpp
CXX .build_release/src/caffe/proto/caffe.pb.cc
AR -o .build_release/lib/libcaffe.a
LD -o .build_release/lib/libcaffe.so.1.0.0
/usr/bin/ld: cannot find -lopencv_imgcodecs
collect2: error: ld returned 1 exit status
Makefile:572: recipe for target '.build_release/lib/libcaffe.so.1.0.0' failed
make: *** [.build_release/lib/libcaffe.so.1.0.0] Error 1

它找不到到达 libopencv_imgcodecs.so 的路,请检查它所在的位置并在 Makefile.config

的 LIBRARY_DIRS 中添加相同的路径

打开您的 Makefile.config 文件,您会发现以下几行:

  # Whatever else you find you need goes here.
    INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
    LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib

如果您找到了位置,例如 /home/username/anaconda3/envs/env-name/lib,则将其添加到 LIBRARY_DIRS。

LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /home/<username>/anaconda3/envs/<env-name>/lib