在pkg-config搜索路径中找不到包opencv

zer*_*ven 50 opencv pkg-config apt-get

我已使用https://help.ubuntu.com/community/OpenCV中的说明安装了OpenCV

$ sudo su
$ sudo apt-get install build-essential
$ sudo apt-get install libavformat-dev
$ sudo apt-get install ffmpeg
$ sudo apt-get install libcv2.3 libcvaux2.3 libhighgui2.3 python-opencv opencv-doc libcv-dev libcvaux-dev libhighgui-dev
Run Code Online (Sandbox Code Playgroud)

现在,当我执行"pkg-config --cflags --libs opencv"时,我收到此错误:

Package opencv was not found in the pkg-config search path.
Perhaps you should add the directory containing `opencv.pc'
to the PKG_CONFIG_PATH environment variable
No package 'opencv' found
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

------- -------更新

好的,我想出了如何解决问题......

我创建了一个名为"opencv.pc"的文件并将其复制到"/ usr/local/lib/pkgconfig"然后我将这两行添加到".bashrc":

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
Run Code Online (Sandbox Code Playgroud)

而已!现在一切都好.

该文件的内容是:

prefix=/usr
exec_prefix=${prefix}
includedir=${prefix}/include
libdir=${exec_prefix}/lib

Name: opencv
Description: The opencv library
Version: 2.x.x
Cflags: -I${includedir}/opencv -I${includedir}/opencv2
Libs: -L${libdir} -lopencv_calib3d -lopencv_imgproc -lopencv_contrib -lopencv_legacy -lopencv_core -lopencv_ml -lopencv_features2d -lopencv_objdetect -lopencv_flann -lopencv_video -lopencv_highgui
Run Code Online (Sandbox Code Playgroud)

更新 - 2014年

看来,Ubuntu社区已经完成了安装OpenCV的文档,你现在要做的是从下载安装脚本https://github.com/jayrambhia/Install-OpenCV/blob/master/Ubuntu/opencv_latest.sh并执行它.

m4r*_*10k 39

从你的问题我猜你正在使用Ubuntu(或衍生物).如果您使用:

apt-file search opencv.pc

然后你看到你必须安装libopencv-dev.

这样做之后,pkg-config --cflags opencvpkg-config --libs opencv如预期应该工作.


emr*_*hzc 31

使用 opencv 4.0;

  • 添加-DOPENCV_GENERATE_PKGCONFIG=ON以构建参数
  • pkg-config --cflags --libs opencv4 而不是 opencv

  • 这是什么意思? (2认同)

har*_*oga 7

当您运行 cmake 时添加附加参数 -D OPENCV_GENERATE_PKGCONFIG=YES (这将生成 opencv.pc 文件)

然后像以前一样 make 和 sudo make install 。

使用名称 opencv4 而不仅仅是 opencv 例如:-

pkg-config --modversion opencv4


zer*_*ven 6

看来ubuntu社区已经完成了安装openCV的文档,

所以你现在要做的就是从这里下载安装脚本并执行它。

不要忘记使其可执行:

chmod +x opencv_latest.sh
Run Code Online (Sandbox Code Playgroud)

然后

./opencv_latest.sh
Run Code Online (Sandbox Code Playgroud)