我已经安装了 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/