Я хочу, чтобы мой Kinect 2 распознавался как веб-камера на Ubuntu 21.10 + драйвер nvidia 470.86 + cuda 11.4:
marietto-BHYVE:/home/marietto# nvcc --version
nvcc: драйвер компилятора NVIDIA (R) Cuda
Авторское право (c) 2005-2021 Корпорация NVIDIA
Построено Mon_May__3_19:15:13_PDT_2021
Инструменты компиляции Cuda, выпуск 11.3, V11.3.109
Сборка cuda_11.3.r11.3/compiler.29920130_0
marietto-BHYVE:/home/marietto/Scrivania/libfreenect2# nvidia-smi
| NVIDIA-SMI 470.86 Версия драйвера: 470.86 Версия CUDA: 11.4
Чтобы выполнить задачу, я следовал этому руководству:
https://www.notaboutmy.life/posts/run-kinect-2-on-ubuntu-20-lts/
и я выпустил следующие команды:
клон git https://github.com/OpenKinect/libfreenect2.git
компакт-диск libfreenect2
сборка mkdir && cd сборка
сделай ..
но в какой-то момент я получил эту ошибку:
marietto-BHYVE:/home/marietto/Scrivania/libfreenect2/build# сделать
-- использование tinythread в качестве библиотеки потоков
-- НЕ удалось найти TegraJPEG (отсутствует: TegraJPEG_INCLUDE_DIRS TegraJPEG_WORKS)
Предупреждение CMake (dev) в /usr/share/cmake-3.18/Modules/FindOpenGL.cmake:305 (сообщение):
Политика CMP0072 не задана: FindOpenGL по умолчанию предпочитает GLVND, когда
имеется в наличии. Запустите «cmake --help-policy CMP0072», чтобы узнать подробности политики. Использовать
cmake_policy для установки политики и подавления этого предупреждения.
FindOpenGL нашел обе устаревшие библиотеки GL:
OPENGL_gl_LIBRARY: /usr/lib/x86_64-linux-gnu/libGL.so
и библиотеки GLVND для OpenGL и GLX:
OPENGL_opengl_LIBRARY: /usr/lib/x86_64-linux-gnu/libOpenGL.so
OPENGL_glx_LIBRARY: /usr/lib/x86_64-linux-gnu/libGLX.so
OpenGL_GL_PREFERENCE не был установлен в «GLVND» или «LEGACY», поэтому для
совместимость с CMake 3.10 и ниже будет использоваться устаревшая библиотека GL.
Стек вызовов (сначала самый последний вызов):
CMakeLists.txt: 269 (FIND_PACKAGE)
Это предупреждение для разработчиков проекта. Используйте -Wno-dev, чтобы подавить его.
-- Связывание с этими библиотеками:
/usr/lib/x86_64-linux-gnu/libusb-1.0.so
пнить
ва-дрм
ва
/usr/lib/x86_64-linux-gnu/libjpeg.so
/usr/lib/x86_64-linux-gnu/libturbojpeg.so.0
/usr/lib/x86_64-linux-gnu/libglfw.so
/usr/lib/x86_64-linux-gnu/libGL.so
/usr/lib/x86_64-linux-gnu/libOpenCL.so
/usr/lib/x86_64-linux-gnu/libcudart_static.a
Потоки::потоки
дл
/usr/lib/x86_64-linux-gnu/librt.a
-- НЕ удалось найти Doxygen (отсутствует: DOXYGEN_EXECUTABLE)
-- Примеры настройки
-- Использование цели freenect2 в дереве
-- Список возможностей:
-- CUDA да
-- CXX11 отключен
-- Примеры да
-- OpenCL да
-- OpenGL да
-- OpenNI2 да
-- TegraJPEG нет
-- Пронизывание крошечной нити
-- ТурбоJPEG да
-- ВААПИ да
-- VideoToolbox нет (только для Apple)
-- streamer_recorder отключен
-- Настройка выполнена
-- Генерация завершена
-- Файлы сборки были записаны в: /home/marietto/Scrivania/libfreenect2/build
[ 4%] Встроенная цель generate_resources_tool
[ 7%] Создание объекта NVCC (устройство) CMakeFiles/cuda_compile_1.dir/src/cuda_compile_1_generated_cuda_kde_depth_packet_processor.cu.o
/home/marietto/Scrivania/libfreenect2/src/cuda_kde_depth_packet_processor.cu:39:10: фатальная ошибка: helper_math.h: файл или каталог не существует
39 | #include <helper_math.h>
| ^~~~~~~~~~~~~~~
компиляция прекращена.
Ошибка CMake на cuda_compile_1_generated_cuda_kde_depth_packet_processor.cu.o.RelWithDebInfo.cmake:220 (сообщение):
Генерация ошибки
/home/marietto/Scrivania/libfreenect2/build/CMakeFiles/cuda_compile_1.dir/src/./cuda_compile_1_generated_cuda_kde_depth_packet_processor.cu.o
make[2]: *** [CMakeFiles/freenect2.dir/build.make:411: CMakeFiles/cuda_compile_1.dir/src/cuda_compile_1_generated_cuda_kde_depth_packet_processor.cu.o] Ошибка 1
make[1]: *** [CMakeFiles/Makefile2:194: CMakeFiles/freenect2.dir/all] Ошибка 2
make: *** [Makefile:149: all] Ошибка 2
он не может продолжить компиляцию, потому что не может найти файл helper_math.h в нужном месте. В этот момент я в замешательстве. Я не знаю, где взять этот файл и куда его поместить. Я предполагаю, что мне следует установить образцы cuda, и я попытался, как вы можете видеть ниже, получить пакет cuda для Ubuntu 20.04 (я использую 21.10, поэтому я подумал, что 20.04 был хорошим, так как он ближе всего к моей Ubuntu версия), и я снял выделение со всего, кроме образцов, но это не сработало:
marietto-BHYVE:/home/marietto/Scrivania# chmod +x cuda_11.6.0_510.39.01_linux.run
marietto-BHYVE:/home/marietto/Scrivania# ./cuda_11.6.0_510.39.01_linux.run
===========
= Резюме =
===========
Драйвер: не выбран
Инструментарий: установлен в /usr/local/cuda-11.6/
Пожалуйста, убедитесь, что
- ПУТЬ включает /usr/local/cuda-11.6/bin
- LD_LIBRARY_PATH включает /usr/local/cuda-11.6/lib64 или добавьте /usr/local/cuda-11.6/lib64 в /etc/ld.so.conf и запустите ldconfig от имени пользователя root.
Чтобы удалить CUDA Toolkit, запустите cuda-uninstaller в /usr/local/cuda-11.6/bin.
***ВНИМАНИЕ: Неполная установка! Эта установка не установила драйвер CUDA. Для работы CUDA 11.6 требуется драйвер версии не ниже 510.00.
Чтобы установить драйвер с помощью этого установщика, выполните следующую команду, заменив <CudaInstaller> именем этого файла запуска:
sudo <CudaInstaller>.run --silent --driver
Файл журнала: /var/log/cuda-installer.log
в качестве дальнейшего эксперимента я попытался установить образцы из версии cuda ниже:
http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run
но :
[INFO]: Установка драйвера обнаружена командой: apt list --installed | grep -e nvidia-драйвер-[0-9][0-9][0-9] -e >
[INFO]: Очистка окна
[ИНФОРМАЦИЯ]: завершено
[INFO]: Проверка версии компилятора...
[ИНФОРМАЦИЯ]: местоположение gcc: /usr/bin/gcc
[ИНФОРМАЦИЯ]: версия gcc: версия gcc 10.3.0 (Ubuntu 10.3.0-11ubuntu1)
[ОШИБКА]: неподдерживаемая версия компилятора: 10.3.0. Используйте --override, чтобы переопределить эту проверку.
В качестве дальнейших попыток я пробовал разные версии пакетов cuda 11.3 и 11.4:
cuda-11-3_11.3.0-1_amd64.deb 4.0KB 2021-03-26 22:54
cuda-11-3_11.3.1-1_amd64.deb 4.0KB 14-05-2021 01:12
cuda-11-4_11.4.0-1_amd64.deb 4.0KB 24-06-2021 02:48
cuda-11-4_11.4.1-1_amd64.deb 4.0KB 2021-07-28 19:46
cuda-11-4_11.4.2-1_amd64.deb 4.0KB 2021-08-30 21:01
cuda-11-4_11.4.3-1_amd64.deb 4.0KB 2021-10-29 16:46
, но каждый раз он не будет устанавливать только образцы без драйвера. Я не хочу переустанавливать драйвер, так как он работает; Я не хочу ломать систему;
В конце я установил образцы cuda, используя этот учебник:
https://snapcraft.io/install/cuda-samples/ubuntu
они были установлены правильно, без каких-либо ошибок, но он по-прежнему не может найти файл helper_math.h, выдавая ту же ошибку, что и раньше.
что мне делать ? Благодарю.