КОРОТКАЯ ВЕРСИЯ
Я хочу связать (не скомпилированные) исходные файлы для OpenCV и librealsense2 с CMake, чтобы я мог скомпилировать его на RPi (или вообще), но я новичок в CMake и не знаю как.
add_executable (CMakeRealSense "CMakeRealSense.cpp" "CMakeRealSense.h")
include_directories(opencv libs/opencv-master/include)
include_directories(realsense2 libs/librealsense-master/include)
Это дает кучу ошибок, связанных с самими файлами RS (X не объявляется в области).
ДЛИННАЯ ВЕРСИЯ
В настоящее время я пытаюсь написать программу для камеры Intel RealSense d435. Я использую две библиотеки. OpenCV и librealsense2 (актуальная библиотека для камеры). Сначала я использовал VCPKG для загрузки пакетов, и это работает для моей локальной машины, но я не могу правильно скомпилировать его на RPi 3. Я решил, что связывание исходных файлов с проектом было бы хорошей идеей, но я не могу заставить его работать. Я получаю одну ошибку за другой.
РЕДАКТИРОВАТЬ 1
Когда я компилирую на своей локальной windows машине, я получаю ошибку Cannot open include file: 'opencv2/opencv_modules.hpp': No such file or directory
. И на моем пи он дает кучу ошибок, связанных с самими файлами RealSense (не проверял их все, там, где их 780)
РЕДАКТИРОВАТЬ 3
Как указано @squareskittles , Я исправил проблему, связанную с моей локальной windows версией, но для pi у меня все еще есть проблемы с новыми ошибками.
Из того, что я могу сказать, говорится, что ошибка не может найти папку opengl_config.cmake
в папках tools
, src
и examples
(examples
будет удалено в дальнейшем, так что это не большая проблема). Последняя ошибка:
CMake Error at libs/librealsense-master/CMake/install_config.cmake:4 (add_custom_target):
add_custom_target cannot create target "uninstall" because another target
with the same name already exists. The existing target is a custom target
created in source directory
"/home/pi/.vs/CMakeRealSense/d6128cea-ef93-4c7b-83bb-89ee6315963f/src/libs/opencv-master".
See documentation for policy CMP0002 for more details.
РЕДАКТИРОВАТЬ 4
Итак, во-первых, я просто добавил папку cmake, содержащую конфигурацию установки, и это работает как, 2-ой ошибкой кажется, что оба librealsense
и opencv
имеют одинаковое имя в конфигурации удаления. Можно ли безопасно изменить add_custom_target
для удаления, не влияя на остальную часть процесса сборки cmake?
EDIT 5
Он успешно компилирует библиотеки realsense2 (насколько я могу судить), но это не могу открыть исходный файл opencv2/core.hpp
. Не уверен, почему он не может его найти.
РЕДАКТИРОВАТЬ 6
Так что я сделал ОЧЕНЬ больше копания и по-разному opencv использует файл заголовка, чтобы проверить, какие модули вы используете, проблема в том, что он работает неправильно сгенерировать один . Я не уверен, как это сделать, но мне придется еще немного покопаться, чтобы узнать