Пакет opencv не найден в пути поиска pkg-config
Я установил OpenCV, используя инструкции в https://help.ubuntu.com/community/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
Теперь, когда я выполняю "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
как я могу решить эту проблему?
-------ОБНОВИТЬ-------
Ок, я разобрался как решить проблему...
Я сделал файл с именем "opencv.pc" и скопировал его в "/usr/local/lib/pkgconfig". Затем я добавил эти две строки в ".bashrc":
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
это! уже все хорошо.
содержимое файла:
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
ОБНОВЛЕНИЕ - 2014
Похоже, что сообщество Ubuntu выполнило документацию по установке openCV, все, что вам нужно сделать сейчас, это загрузить скрипт установки с https://github.com/jayrambhia/Install-OpenCV/blob/master/Ubuntu/opencv_latest.sh и выполнить его.
Ответы
Ответ 1
кажется, что сообщество ubuntu завершило документацию по установке openCV,
так что теперь вам нужно скачать установку script из здесь и выполнить ее.
не забудьте сделать его выполнимым:
chmod +x opencv_latest.sh
затем
./opencv_latest.sh
Ответ 2
Из вашего вопроса, я думаю, вы используете Ubuntu (или дериват).
Если вы используете:
apt-file search opencv.pc
то вы увидите, что вам нужно установить libopencv-dev
.
После этого pkg-config --cflags opencv
и pkg-config --libs opencv
должны работать как ожидалось.
Ответ 3
Привет, прежде всего, я хотел бы, чтобы вы использовали "Synaptic Package Manager". Вам просто нужно перейти в программный центр ubuntu и найти диспетчера синаптических пакетов. Красота в том, что все необходимые вам пакеты легко доступны здесь. Во-вторых, он автоматически настроит все ваши пути. Теперь установите это, затем найдите opencv-пакеты там, если вы нашли пакет с зеленым полем, а затем его установили, но пакет не находится в нужном месте, поэтому вам нужно переустановить его, но из диспетчера пакетов на этот раз. Если установлено, вы можете сделать это только, вам просто нужно заполнить переменную OpenCV_DIR с помощью пути opencv (содержащий файл OpenCVConfig.cmake)
export OpenCV_DIR=<path_of_opencv>
Ответ 4
Я получил ту же ошибку при попытке скомпилировать пакет Go на Debian 9.8:
# pkg-config --cflags -- libssl libcrypto
Package libssl was not found in the pkg-config search path.
Perhaps you should add the directory containing 'libssl.pc'
Дело в том, что pkg-config
ищет метаинформацию пакета в файлах .pc
. Такие файлы приходят из пакета dev. Так что, хотя у меня был установлен libssl
, я все равно получил ошибку. Это было решено путем запуска:
sudo apt-get install libssl-dev
Ответ 5
$ ./configure --enable-libopencv
ERROR: opencv not found using pkg-config
$ cat /usr/lib64/pkgconfig/opencv.pc
# Package Information for pkg-config
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib64
includedir_old=${prefix}/include/opencv
includedir_new=${prefix}/include
Name: OpenCV
Description: Open Source Computer Vision Library
Version: 3.1.0
Libs: -L${exec_prefix}/lib64 -lopencv_shape -lopencv_stitching -lopencv_superres -lopencv_videostab -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_cvv -lopencv_dnn -lopencv_dpm -lopencv_fuzzy -lopencv_hdf -lopencv_line_descriptor -lopencv_optflow -lopencv_plot -lopencv_reg -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_rgbd -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_text -lopencv_face -lopencv_video -lopencv_ximgproc -lopencv_calib3d -lopencv_features2d -lopencv_flann -lopencv_xobjdetect -lopencv_objdetect -lopencv_ml -lopencv_xphoto -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_photo -lopencv_imgproc -lopencv_core
Libs.private: -L/usr/lib64 -lQt5Test -lQt5Concurrent -lQt5OpenGL -L/lib64 -lwebp -lpng -ltiff -ljasper -ljpeg -lImath -lIlmImf -lIex -lHalf -lIlmThread -lgdal -lgstvideo-1.0 -lgstapp-1.0 -lgstbase-1.0 -lgstriff-1.0 -lgstpbutils-1.0 -lgstreamer-1.0 -lucil -lunicap -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lfontconfig -lfreetype -lglib-2.0 -ldc1394 -lv4l1 -lv4l2 -lgphoto2 -lgphoto2_port -lexif -lQt5Core -lQt5Gui -lQt5Widgets -lhdf5_hl -lhdf5 -lz -ldl -lm -ltesseract -llept -lpthread -lrt -lGLU -lGL
Cflags: -I${includedir_old} -I${includedir_new}
$ pkg-config --cflags --libs opencv
-I/usr/include/opencv -lopencv_shape -lopencv_stitching -lopencv_superres -lopencv_videostab -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_cvv -lopencv_dnn -lopencv_dpm -lopencv_fuzzy -lopencv_hdf -lopencv_line_descriptor -lopencv_optflow -lopencv_plot -lopencv_reg -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_rgbd -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_text -lopencv_face -lopencv_video -lopencv_ximgproc -lopencv_calib3d -lopencv_features2d -lopencv_flann -lopencv_xobjdetect -lopencv_objdetect -lopencv_ml -lopencv_xphoto -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_photo -lopencv_imgproc -lopencv_core
$ uname -a
Linux fedora-23-x64 4.8.13-100.fc23.x86_64 #1 SMP Fri Dec 9 14:51:40 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Ответ 6
У меня была похожая проблема.
Пакет 'opencv' не найден
когда попытался выполнить команду make для сети yolo.
В моем случае мне нужно было установить последнюю версию opencv по этой ссылке
https://github.com/jayrambhia/Install-OpenCV
Ответ 7
с opencv 4.0;
- добавьте
-DOPENCV_GENERATE_PKGCONFIG=ON
для построения аргументов
pkg-config --cflags --libs opencv4
вместо opencv