Собственный Android OpenCV: не удалось найти файл конфигурации пакета, предоставленный «OpenCV» - PullRequest
0 голосов
/ 29 сентября 2019

Я пытаюсь сделать OpenCV доступным в собственном коде cpp в модуле app проекта Android.У меня есть доступ к OpenCV в Java-коде, это нативная часть интеграции, с которой у меня проблемы.

Моя настройка:

  • Создайте новый проект Android с шаблоном собственного кода, поэтомучто я начинаю с файлов native-lib.cpp, CMakeLists.txt и собственной настройки сборки в app/build.gradle
  • Скопируйте папку opencv-3.4.7-android-sdk/sdk в проект Android и переименуйте ее в opencv
  • Зарегистрируйте opencv как модуль в settings.gradle (include ':opencv')
  • Настройте версии SDK в opencv/build.gradle
  • Установите app в зависимости от opencv (implementation project(':opencv'))
  • Установите флаги и аргументы CMake cpp в соответствии с документацией opencv/build.gradle
    • cppFlags "-std=c++11 -frtti -fexceptions"
    • arguments "-DOpenCV_DIR=../opencv/native/jni/"
  • Вызовите find_package(OpenCV REQUIRED) и target_link_libraries(native-lib ${OpenCV_LIBS}) в app/src/main/cpp/CMakeLists.txt (согласно документации в OpenCVConfig.cmake)

После всего этого синхронизация проекта завершается неудачно: «Не удалось найти конфигурацию пакетафайл, предоставленный "OpenCV" с любым из следующих имен: OpenCVConfig.cmake, opencv-config.cmake "

Путь к OpenCVConfig.cmake: opencv/native/jni/OpenCVConfig.cmake Это означаетчто аргумент -DOpenCV_DIR должен быть правильным (я также пытался использовать абсолютные пути), поэтому CMake должен найти файл, который ищет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...