Ошибка компиляции библиотеки Libhand с использованием cmake

Я пытаюсь создать библиотеку моделей рук из libhand.org в Ubuntu 12.04. Библиотека использует библиотеки ogre и opencv. Я следовал инструкциям автора, что позволило мне успешно установить ogre и opencv. К сожалению, при настройке самой библиотеки libhand с помощью cmake (по команде cmake..) я получаю следующую ошибку:

Ошибка CMake: в этом проекте используются следующие переменные, но для них установлено значение NOTFOUND. Установите их или убедитесь, что они установлены и протестированы правильно в файлах CMake: OGRE_RenderSystem_GL_INCLUDE_DIR (ADVANCED) используется как включаемый каталог в каталоге /home/roman/work_dir/libhand-0.9/hand_cpp/source используется в качестве включаемого каталога в каталоге /home/ roman/work_dir/libhand-0.9/hand_cpp/source/dot_sceneloader
используется как включаемый каталог в каталоге /home/roman/work_dir/libhand-0.9/hand_cpp/source/dot_sceneloader/tinyxml

-- Настройка не завершена, произошли ошибки!

Кто-нибудь знает, почему возникает эта ошибка и что можно сделать?


person Roman Malashin    schedule 20.08.2012    source источник


Ответы (2)


Я являюсь автором библиотеки libhand и отлаживал эту проблему с помощью Roman. Вот причина и решение этой проблемы:

Причина:

Заголовки/библиотеки разработчика OpenGL не были установлены до того, как OGRE был скомпилирован, а затем установлен.

OGRE молча компилируется, но без поддержки OpenGL. Затем код, использующий OGRE, не компилируется из-за отсутствия поддержки OpenGL в OGRE.


исправление этой проблемы:

1) Установите заголовки/библиотеки разработки OpenGL, выполнив следующие действия:

sudo apt-get install freeglut3 freeglut3-dev

2) Перекомпилировать/переустановить OGRE.

При использовании libhand перекомпилировать OGRE означает перейти в каталог install_help/linux_ogre_static_installer и запустить:

./install_ogre_static.sh clean

с последующим

./install_ogre_static.sh build

а также

sudo ./install_ogre_static.sh install

3) Очистите и пересоберите libhand или другое программное обеспечение, которое сообщило об этой ошибке.

Для libhand перейдите к hand_cpp и выполните:

rm -rf build/*

с последующим

cd build
cmake ..

Вы не должны видеть сообщение об ошибке после этого шага, и мы надеемся, что libhand будет работать из коробки.

person Marin Šarić    schedule 03.09.2012

CMake не может найти заголовочные файлы OpenGL. Установите пакет -dev для libGL.

person arrowd    schedule 20.08.2012