c++ - 找不到-lopencv_contrib 找不到-lopencv_legacy

标签 c++ opencv ubuntu-18.04

我已经安装了 opencv,它编译了 100%,我运行了一个命令: pkg-config --cflags --libs opencv 它的输出是:-I/usr/include/opencv -I/usr/include/opencv4 -lopencv_calib3d -lopencv_imgproc -lopencv_contrib -lopencv_legacy -lopencv_core -lopencv_ml -lopencv_features2d -lopencv_objdetect -lopencv_flann -lopencv_video -lopencv_highgui

但是当我尝试编译 C++ 代码时,它给出了找不到错误, 我不知道该怎么办。 谢谢..

~/cpp_test$

g++ main.cpp -o output `pkg-config --cflags --libs opencv`
/usr/bin/x86_64-linux-gnu-ld: cannot find -lopencv_contrib
/usr/bin/x86_64-linux-gnu-ld: cannot find -lopencv_legacy
collect2: error: ld returned 1 exit status

最佳答案

如果您安装了 OpenCV 4,我确信您遇到了与我相同的问题。

解决办法其实很简单,只需要运行

g++ main.cpp -o output `pkg-config --cflags --libs opencv4`

而不是

g++ main.cpp -o output `pkg-config --cflags --libs opencv`

关于c++ - 找不到-lopencv_contrib 找不到-lopencv_legacy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54937769/

相关文章:

c++ - GLSL 子程序没有改变

c++ - TBB书中的代码

c++ - 具有求和界限的重复排列

python - 如何使用python在opencv中设置视频捕获格式?

python - 尝试下载 opencv3 时如何修复 Python 版本错误?

mysql - Laravel SQLSTATE[HY000] [1698] 用户 'root' @'localhost' 的访问被拒绝

c++ - 为什么 Boost.Range is_sorted 不需要前向迭代器?

c++ - OpenCV 试图将两个不同的图像合二为一

linux - 命令行中施加的时间限制似乎不会限制运行时间

ubuntu-18.04 - Chromium 在 Ubuntu : ERROR at//build_overrides/build. gni:5:1 上构建失败:无法加载 "/home/chromium/src/build/config/gclient_args.gni"