Tôi muốn Kinect 2 của tôi được công nhận là webcam trên trình điều khiển Ubuntu 21.10 + nvidia 470.86 + cuda 11.4:
marietto-BHYVE:/home/marietto# nvcc --version
nvcc: Trình điều khiển trình biên dịch NVIDIA (R) Cuda
Bản quyền (c) 2005-2021 Tập đoàn NVIDIA
Được xây dựng vào Th2_May__3_19:15:13_PDT_2021
Công cụ biên dịch Cuda, phát hành 11.3, V11.3.109
Bản dựng cuda_11.3.r11.3/compiler.29920130_0
marietto-BHYVE:/home/marietto/Scrivania/libfreenect2# nvidia-smi
| Phiên bản trình điều khiển NVIDIA-SMI 470.86: 470.86 Phiên bản CUDA: 11.4
Để hoàn thành nhiệm vụ tôi đã làm theo hướng dẫn này:
https://www.notaboutmy.life/posts/run-kinect-2-on-ubuntu-20-lts/
và tôi đã đưa ra các lệnh sau:
bản sao git https://github.com/OpenKinect/libfreenect2.git
cd libfreenect2
bản dựng mkdir && bản dựng cd
cmake..
nhưng tại một số điểm, tôi đã gặp lỗi này:
marietto-BHYVE:/home/marietto/Scrivania/libfreenect2/build# make
-- sử dụng tinythread làm thư viện luồng
-- KHÔNG thể tìm thấy TegraJPEG (thiếu: TegraJPEG_INCLUDE_DIRS TegraJPEG_WORKS)
Cảnh báo CMake (nhà phát triển) tại /usr/share/cmake-3.18/Modules/FindOpenGL.cmake:305 (tin nhắn):
Chính sách CMP0072 chưa được đặt: FindOpenGL ưu tiên GLVND theo mặc định khi
có sẵn. Chạy "cmake --help-policy CMP0072" để biết chi tiết về chính sách. Sử dụng
lệnh cmake_policy để đặt chính sách và chặn cảnh báo này.
FindOpenGL đã tìm thấy cả thư viện GL kế thừa:
OPENGL_gl_LIBRARY: /usr/lib/x86_64-linux-gnu/libGL.so
và thư viện GLVND cho OpenGL và 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 chưa được đặt thành "GLVND" hoặc "LEGACY", vì vậy đối với
khả năng tương thích với CMake 3.10 trở xuống, thư viện GL kế thừa sẽ được sử dụng.
Ngăn xếp cuộc gọi (cuộc gọi gần đây nhất trước):
CMakeLists.txt:269 (FIND_PACKAGE)
Cảnh báo này dành cho các nhà phát triển dự án. Sử dụng -Wno-dev để chặn nó.
-- Liên kết với các thư viện này:
/usr/lib/x86_64-linux-gnu/libusb-1.0.so
pthread
va-drm
va
/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
Chủ đề::Chủ đề
đl
/usr/lib/x86_64-linux-gnu/librt.a
-- KHÔNG thể tìm thấy Doxygen (thiếu: DOXYGEN_EXECUTABLE)
-- Cấu hình ví dụ
-- Sử dụng mục tiêu freenect2 trong cây
-- Danh sách tính năng:
-- CUDA có
-- CXX11 bị vô hiệu hóa
-- Ví dụ có
-- OpenCL có
-- OpenGL có
-- OpenNI2 có
-- TegraJPEG không
-- Luồng tinythread
-- TurboJPEG có
-- VAAPI có
-- VideoToolbox không (chỉ dành cho Apple)
-- streamer_recorder bị tắt
-- Cấu hình xong
-- Tạo xong
-- Các tệp bản dựng đã được ghi vào: /home/marietto/Scrivania/libfreenect2/build
[ 4%] Tạo_resources_tool mục tiêu đã tạo
[ 7%] Xây dựng đối tượng NVCC (Thiết bị) 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: lỗi nghiêm trọng: helper_math.h: Tệp o thư mục không tồn tại
39 | #include <helper_math.h>
| ^~~~~~~~~~~~~~~~~~~
biên dịch chấm dứt.
Lỗi CMake tại cuda_compile_1_generated_cuda_kde_depth_packet_processor.cu.o.RelWithDebInfo.cmake:220 (tin nhắn):
Tạo lỗi
/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] Lỗi 1
make[1]: *** [CMakeFiles/Makefile2:194: CMakeFiles/freenect2.dir/all] Errore 2
thực hiện: *** [Tệp tạo tệp:149: tất cả] Lỗi 2
nó không thể tiếp tục quá trình biên dịch vì nó không thể tìm thấy tệp helper_math.h ở vị trí thích hợp. Tại thời điểm này tôi bối rối. Tôi không biết tôi có thể lấy tệp đó ở đâu và tôi nên đặt nó ở đâu. Tôi tưởng tượng rằng tôi nên cài đặt các mẫu cuda và tôi đã thử, như bạn có thể thấy bên dưới, lấy gói cuda cho ubuntu 20.04 (tôi đang chạy 21.10, vì vậy tôi nghĩ rằng 20.04 là tốt, vì nó gần nhất với phiên bản ubuntu của tôi ), và tôi đã bỏ chọn mọi thứ trừ các mẫu, nhưng nó không hoạt động:
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
===========
= Tóm tắt =
===========
Trình điều khiển: Không được chọn
Bộ công cụ: Được cài đặt trong /usr/local/cuda-11.6/
Làm ơn hãy chắc chắn điều đó
- ĐƯỜNG bao gồm /usr/local/cuda-11.6/bin
- LD_LIBRARY_PATH bao gồm /usr/local/cuda-11.6/lib64 hoặc, thêm /usr/local/cuda-11.6/lib64 vào /etc/ld.so.conf và chạy ldconfig với quyền root
Để gỡ cài đặt Bộ công cụ CUDA, hãy chạy cuda-uninstaller trong /usr/local/cuda-11.6/bin
***CẢNH BÁO: Cài đặt chưa hoàn tất! Cài đặt này không cài đặt Trình điều khiển CUDA. Cần có trình điều khiển của phiên bản ít nhất là 510.00 để chức năng CUDA 11.6 hoạt động.
Để cài đặt trình điều khiển bằng trình cài đặt này, hãy chạy lệnh sau, thay thế <CudaInstaller> bằng tên của tệp chạy này:
sudo <CudaInstaller>.run --silent --driver
Tệp nhật ký là /var/log/cuda-installer.log
Tôi cũng đã thử cài đặt các mẫu từ phiên bản cuda bên dưới:
http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run
nhưng :
[INFO]: Cài đặt trình điều khiển được phát hiện bằng lệnh: apt list --installed | grep -e nvidia-driver-[0-9][0-9][0-9] -e >
[INFO]: Dọn dẹp cửa sổ
[INFO]: Hoàn thành
[INFO]: Đang kiểm tra phiên bản trình biên dịch...
[INFO]: vị trí gcc: /usr/bin/gcc
[THÔNG TIN]: phiên bản gcc: phiên bản gcc 10.3.0 (Ubuntu 10.3.0-11ubuntu1)
[LỖI]: phiên bản trình biên dịch không được hỗ trợ: 10.3.0. Sử dụng --override để ghi đè kiểm tra này.
Khi thử thêm, tôi đã thử các phiên bản khác nhau của gói cuda 11.3 và 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 2021-05-14 01:12
cuda-11-4_11.4.0-1_AMD64.deb 4.0KB 2021-06-24 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
, nhưng mọi lúc nó sẽ không chỉ cài đặt các mẫu mà không có trình điều khiển. Tôi không muốn cài đặt lại trình điều khiển, vì nó vẫn hoạt động; Tôi không muốn phá vỡ hệ thống;
Cuối cùng, tôi đã cài đặt các mẫu cuda bằng hướng dẫn này:
https://snapcraft.io/install/cuda-samples/ubuntu
chúng đã được cài đặt chính xác, không đưa ra bất kỳ lỗi nào, nhưng nó vẫn không thể tìm thấy tệp helper_math.h, đưa ra lỗi tương tự như trước đây.
tôi nên làm gì ? cảm ơn.