Укажите проект CMake на конкретный включаемый файл - PullRequest
1 голос
/ 14 октября 2011

Я пытаюсь собрать OpenCV 2.3.0 с включенным FFMPEG. Поскольку Ubuntu 11.10 предоставляет только libavcodec / format с версией 0.7, а билет # 1020 (ссылка ниже) указывает, что он должен работать с 0.8.

Если я пытаюсь скомпилировать, я получаю следующую ошибку:

[ 18%] Building CXX object modules/highgui/CMakeFiles/opencv_highgui.dir/src/cap_ffmpeg.o
In file included from /home/chris/src/OpenCV-2.3.0/modules/highgui/src/cap_ffmpeg.cpp:45:0:
/home/foo/src/OpenCV-2.3.0/modules/highgui/src/cap_ffmpeg_impl.hpp:103:36: fatal error: libavformat/avformat.h: No such file or directory
compilation terminated.

Этот файл находится в /opt/linux64-debug/include/ffmpeg/libavformat/avformat.h. Я попытался указать make на это с помощью CMAKE_INCLUDE_ {DIRECTORY, PATH}, CMAKE_PREFIX_PATH и CMAKE_LIBRARY_PATH. Ничего из этого не сработало. (Я всегда использовал путь /opt/linux64-debug/include/ffmpeg.)

https://code.ros.org/trac/opencv/ticket/1020

1 Ответ

1 голос
/ 16 ноября 2011

Попробуйте команду include_directories().В моем файле CMakeLists.txt я использую его так:

include_directories(. /opt/special/headers/in/here)

add_executable(helloworld helloworld.c)

У меня никогда не было с этим проблем.

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