Cmake не может найти локальную версию opencv на Ubuntu 18.04 - PullRequest
0 голосов
/ 12 мая 2018

У меня есть версия OpenCV ((3.4.1), скомпилированная и установленная в / home / m / locals / opencv

содержимое / home / m / locals / opencv:

bin
include
lib
share

У меня есть окружение, указывающее на этот каталог:

echo $OPENCV_ROOT
/home/m/locals/opencv

У меня есть cmake, который пытается добавить opencv в проект:

 file(TO_CMAKE_PATH $ENV{OPENCV_ROOT} OpenCV_DIR)
 set(BUILD_SHARED_LIBS OFF)
 find_package(OpenCV  COMPONENTS core highgui imgproc imgcodecs videoio photo stitching flann ml features2d calib3d objdetect REQUIRED)

, когда я запускаю cmake, яполучаю эту ошибку:

CMake Error at /usr/local/share/OpenCV/OpenCVModules.cmake:399 (message):
The imported target "opencv_core" references the file

     "/usr/local/lib/libopencv_core.so.3.4.0"

   but this file does not exist.  Possible reasons include:

   * The file was deleted, renamed, or moved to another location.

   * An install or uninstall procedure did not complete successfully.

   * The installation package was faulty and contained

      "/usr/local/share/OpenCV/OpenCVModules.cmake"

   but not all the files it references.

Мои вопросы:

  1. Почему он пытается найти OpenbCV 3.4.0, когда тот, который я установил, - 3.4.1
  2. Как я могу это исправить и сделать так, чтобы он указывал на правильную копию openCV?

1 Ответ

0 голосов
/ 12 мая 2018

Вы можете сделать export OpenCV_DIR=..., как прокомментировал @Tsyvarev.Однако это может повлиять на другие сборки, для которых требуется ровно 3.4.0.Скорее, установите переменную в CMakeLists.txt

set(OpenCV_DIR /home/m/locals/opencv/share/OpenCV)

вашего проекта или вы можете установить переменную вручную при запуске cmake:

cmake -D OpenCV_DIR=/home/m/locals/opencv/share/OpenCV ..
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...