2015-06-04 5 views
0

Я пытаюсь скомпилировать libfreenect2 из libfreenect2 и получается, что, когда я запускаю файл грим после проделав Cmake CMakeLists.txt на шаге 5, я храню, имеющий следующие ошибки:Неопределенная ссылка на `XF86VidModeQueryExtension»

Linking CXX executable /home/lex/libfreenect2/examples/protonect/bin/Protonect 
/home/lex/libfreenect2/examples/protonect/lib/libfreenect2.so: undefined reference to `XF86VidModeQueryExtension' 
/home/lex/libfreenect2/examples/protonect/lib/libfreenect2.so: undefined reference to `XF86VidModeGetGammaRampSize' 
/home/lex/libfreenect2/examples/protonect/lib/libfreenect2.so: undefined reference to `XF86VidModeGetGammaRamp' 
/home/lex/libfreenect2/examples/protonect/lib/libfreenect2.so: undefined reference to `XF86VidModeSetGammaRamp' 
collect2: error: ld returned 1 exit status 
make[2]: *** [/home/lex/libfreenect2/examples/protonect/bin/Protonect] Error 1 
make[1]: *** [CMakeFiles/Protonect.dir/all] Error 2 
make: *** [all] Error 2 

Есть ли у кого-нибудь идеи, как это исправить?

+0

Вы выполнили команду 'ccmake' (с 2 'c') после вашего первого' cmake', чтобы получить доступ к параметрам компиляции? – Caduchon

+0

Нет. Я не вижу причин, почему я должен. Проблема не связана с тем, что вы думаете. Во всяком случае, это была проблема opengl mesa utils, которую я исправил, установив mesa. – Calorified

ответ

1

Ваша программа зависит от libXxf86vm. Вам нужно будет добавить что-то наподобие

-lXxf86vm 

в командную строку связи. Обязательно установите пакет разработки. Я удивлен, что у CMakeLists.txt этого не было.

0

Установка Mesa3D, похоже, исправляет мою проблему. Это то, что, вероятно, связано с зависимостями libfreenect2 во время установки cmake.

Смежные вопросы