Помогите с ошибкой компиляции

Я уже скомпилировал, я уже скомпилировал libfreenect для natty и сейчас пытаюсь установить мышь kinect: https://github.com/Ooblik/Kinect-Mouse/ Но когда я печатаю make Я получаю сообщение об ошибке ...

Это терминал:

eric@eric-desktop:~$ cd /home/eric/kinect_mouse
eric@eric-desktop:~/kinect_mouse$ mkdir build
eric@eric-desktop:~/kinect_mouse$ cd build
eric@eric-desktop:~/kinect_mouse/build$ cmake ..
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Looking for include files CMAKE_HAVE_PTHREAD_H
-- Looking for include files CMAKE_HAVE_PTHREAD_H - found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE 
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Found X11: /usr/lib/x86_64-linux-gnu/libX11.so
-- Configuring done
-- Generating done
-- Build files have been written to: /home/eric/kinect_mouse/build
eric@eric-desktop:~/kinect_mouse/build$ make
Scanning dependencies of target kmouse
[100%] Building C object CMakeFiles/kmouse.dir/kinect_mouse.c.o
Linking C executable kmouse
CMakeFiles/kmouse.dir/kinect_mouse.c.o: In function `freenect_threadfunc':
kinect_mouse.c:(.text+0xd6d): undefined reference to `freenect_set_video_format'
kinect_mouse.c:(.text+0xd81): undefined reference to `freenect_set_depth_format'
collect2: ld returned 1 exit status
make[2]: *** [kmouse] Error 1
make[1]: *** [CMakeFiles/kmouse.dir/all] Error 2
make: *** [all] Error 2
eric@eric-desktop:~/kinect_mouse/build$

1
задан 26 June 2012 в 05:04

7 ответов

Эта ошибка указывает на отсутствующую библиотеку. Выполнение grep -rn freenect_set_video_format . в каталоге, содержащем libfreenect, показало, что fakenect/fakenect.c содержит требуемую функцию. Чтение fakenect / README показало, что вам нужно связываться с этой библиотекой при сборке kinect_mouse.

Итак, отредактируйте kinect_mouse/CMakeLists.txt и вставьте в него link_directories(/usr/local/lib64/fakenect): / g3]

cmake_minimum_required(VERSION 2.8)

link_directories(/usr/local/lib64/fakenect)

add_executable(kmouse kinect_mouse.c)

Очистите каталог сборки и выполните сборку снова.

2
ответ дан 25 July 2018 в 21:26

Эта ошибка указывает на отсутствующую библиотеку. Выполнение grep -rn freenect_set_video_format . в каталоге, содержащем libfreenect, показало, что fakenect/fakenect.c содержит требуемую функцию. Чтение fakenect / README показало, что вам нужно связываться с этой библиотекой при сборке kinect_mouse.

Итак, отредактируйте kinect_mouse/CMakeLists.txt и вставьте в него link_directories(/usr/local/lib64/fakenect): / g3]

cmake_minimum_required(VERSION 2.8)

link_directories(/usr/local/lib64/fakenect)

add_executable(kmouse kinect_mouse.c)

Очистите каталог сборки и выполните сборку снова.

2
ответ дан 2 August 2018 в 03:05

Эта ошибка указывает на отсутствующую библиотеку. Выполнение grep -rn freenect_set_video_format . в каталоге, содержащем libfreenect, показало, что fakenect/fakenect.c содержит требуемую функцию. Чтение fakenect / README показало, что вам нужно связываться с этой библиотекой при сборке kinect_mouse.

Итак, отредактируйте kinect_mouse/CMakeLists.txt и вставьте в него link_directories(/usr/local/lib64/fakenect):

cmake_minimum_required(VERSION 2.8)

link_directories(/usr/local/lib64/fakenect)

add_executable(kmouse kinect_mouse.c)

Очистите каталог сборки и выполните сборку снова.

2
ответ дан 4 August 2018 в 18:56

Эта ошибка указывает на отсутствующую библиотеку. Выполнение grep -rn freenect_set_video_format . в каталоге, содержащем libfreenect, показало, что fakenect/fakenect.c содержит требуемую функцию. Чтение fakenect / README показало, что вам нужно связываться с этой библиотекой при сборке kinect_mouse.

Итак, отредактируйте kinect_mouse/CMakeLists.txt и вставьте в него link_directories(/usr/local/lib64/fakenect):

cmake_minimum_required(VERSION 2.8)

link_directories(/usr/local/lib64/fakenect)

add_executable(kmouse kinect_mouse.c)

Очистите каталог сборки и выполните сборку снова.

2
ответ дан 6 August 2018 в 03:18

Эта ошибка указывает на отсутствующую библиотеку. Выполнение grep -rn freenect_set_video_format . в каталоге, содержащем libfreenect, показало, что fakenect/fakenect.c содержит требуемую функцию. Чтение fakenect / README показало, что вам нужно связываться с этой библиотекой при сборке kinect_mouse.

Итак, отредактируйте kinect_mouse/CMakeLists.txt и вставьте в него link_directories(/usr/local/lib64/fakenect):

cmake_minimum_required(VERSION 2.8)

link_directories(/usr/local/lib64/fakenect)

add_executable(kmouse kinect_mouse.c)

Очистите каталог сборки и выполните сборку снова.

2
ответ дан 7 August 2018 в 20:59

Эта ошибка указывает на отсутствующую библиотеку. Выполнение grep -rn freenect_set_video_format . в каталоге, содержащем libfreenect, показало, что fakenect/fakenect.c содержит требуемую функцию. Чтение fakenect / README показало, что вам нужно связываться с этой библиотекой при сборке kinect_mouse.

Итак, отредактируйте kinect_mouse/CMakeLists.txt и вставьте в него link_directories(/usr/local/lib64/fakenect): / g3]

cmake_minimum_required(VERSION 2.8)

link_directories(/usr/local/lib64/fakenect)

add_executable(kmouse kinect_mouse.c)

Очистите каталог сборки и выполните сборку снова.

2
ответ дан 10 August 2018 в 09:22

Эта ошибка указывает на отсутствующую библиотеку. Выполнение grep -rn freenect_set_video_format . в каталоге, содержащем libfreenect, показало, что fakenect/fakenect.c содержит требуемую функцию. Чтение fakenect / README показало, что вам нужно связываться с этой библиотекой при сборке kinect_mouse.

Итак, отредактируйте kinect_mouse/CMakeLists.txt и вставьте в него link_directories(/usr/local/lib64/fakenect): / g3]

cmake_minimum_required(VERSION 2.8)

link_directories(/usr/local/lib64/fakenect)

add_executable(kmouse kinect_mouse.c)

Очистите каталог сборки и выполните сборку снова.

2
ответ дан 13 August 2018 в 12:45
  • 1
    Спасибо, что сработало, но когда я запускаю kinect_mouse, я получаю еще одну ошибку: Ошибка: переменная окружения FAKENECT_PATH не установлена. Укажите путь, который был создан с помощью утилиты «record». – era878 17 August 2011 в 23:39
  • 2
    Похоже, вам также нужно запустить программу record, которая также предоставляется libkinect. Пожалуйста, прочитайте github.com/OpenKinect/libfreenect/blob/master/fakenect/README – Lekensteyn 18 August 2011 в 13:51

Другие вопросы по тегам:

Похожие вопросы: