【问题标题】:compiling code with opencv - /usr/bin/ld: cannot find -lippicv用 opencv 编译代码 - /usr/bin/ld: 找不到 -lippicv
【发布时间】:2015-12-21 17:19:52
【问题描述】:

使用opencv 编译某些代码时出现此错误

# g++ txtbin-03.1.cpp -o txtbin `pkg-config opencv --cflags --libs`
/usr/bin/ld: cannot find -lippicv
collect2: error: ld returned 1 exit status

安装opencv

# apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
# apt-get install libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
# cd /var/bin && git clone https://github.com/Itseez/opencv.git && cd opencv
# cmake . && make -j2 && make install

【问题讨论】:

标签: c++ opencv


【解决方案1】:

就我而言,只需将 libippicv.a 从 OpenCV SDK 复制到 /usr/local/lib:

sudo cp 3rdparty/ippicv/unpack/ippicv_lnx/lib/intel64/libippicv.a /usr/local/lib/

【讨论】:

  • 这应该是最好的解决办法。
【解决方案2】:

不需要重新编译整个库,尤其是当您不需要这个库时。我找到了很好的即时工作解决方案here。如果链接过期或损坏:

解决方案是简单地从 opencv pkg-config 配置文件中删除 -lippicv。所以你必须找到opencv.pc 文件,默认在/usr/local/lib/pkgconfig/ 目录中。然后从Libs: 部分删除上述库。

【讨论】:

    【解决方案3】:

    使用以下选项重新编译 OpenCv:

    cmake -DWITH_IPP=ON . && make -j $(nproc) && make install
    

    【讨论】:

    • 在哪里添加行?找不到TARGET_LINK_LIBRARIES( 或周围的任何其他行
    • 你在编译openCV吗?
    • 是的,所以在编译过程中你有 lippicv 库
    • 使用选项编译 OpenCv : WITH_IPP=ON
    • 但我找不到将行添加到CMakeLists.txt:...的位置。当我搜索文本文件时,我找不到TARGET_LINK_LIBRARIES
    【解决方案4】:

    libippicv.a 是第三方库,因此您需要在编译期间显式提供它或使其成为执行环境的一部分。

    它位于~/OpenCV/opencv-3.1.0/3rdparty/ippicv/unpack/ippicv_lnx/lib/intel64/

    另外,在生成 Makefile 时提供 cmake -DWITH_IPP=ON

    【讨论】:

      【解决方案5】:

      我在尝试安装 opencv_contrib 存储库(opencv-3.1.0/Ubuntu 16.04)时遇到了同样的问题,但没有一个解决方案有效(我尝试使用标志 WITH_IPP=ON 制作 OpenCV,但不知何故 OpenCV 3.1 .0 无法下载ippicv 库(?)并且没有错误提示,所以我只是在终端中尝试locate ippicv 时才知道这一点。

      我的解决方案是下载另一个 OpenCV 构建(3.0.0 对我有用),使用标志 WITH_IPP=ON 进行 make + make install,然后将下载的 ippicv 库(现在应该位于 /usr/local/share/OpenCV/3rdparty/lib/libippicv.a)复制到/usr/local/lib/.

      我不知道这是否是 OpenCV 3.1.0 中的一个已知错误,但这绝对值得关注。

      【讨论】:

        猜你喜欢
        • 2021-05-07
        • 2014-08-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-01-07
        • 2013-04-08
        • 1970-01-01
        相关资源
        最近更新 更多