You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CMake无法找到Python开发目录:Jetson Xavier NX安装librealsense求助

问题:Jetson Xavier NX(Ubuntu20.04)安装librealsense v2.50 Python绑定失败

环境与操作

  • 硬件:Jetson Xavier NX
  • 系统:Ubuntu 20.04
  • 目标:安装带Python绑定的librealsense v2.50

执行的CMake命令:

~/Downloads/librealsense-2.50.0/build$ cmake ../ -DFORCE_LIBUVC=true\
-DCMAKE_BUILD_TYPE=release \
-DBUILD_WITH_CUDA=true -DBUILD_PYTHON_BINDINGS=true\
-DBUILD_NODEJS_BINDINGS=true -DPYTHON_EXECUTABLE=/usr/bin/python3\
-DBUILD_EXAMPLES=true -DBUILD_GRAPHICAL_EXAMPLES=true\
-DPYTHON_INCLUDE_DIR=/usr/include/python3.8 \
-DPYTHON_LIBRARY=/usr/lib/libpython3.8.so

CMake前期输出:

CMake Warning:
-- Checking internet connection...
-- Internet connection identified
CMake Deprecation Warning at CMakeLists.txt:9 (MESSAGE):
  FORCE_LIBUVC, FORCE_WINUSB_UVC and ANDROID_USB_HOST_UVC are deprecated, use
  FORCE_RSUSB_BACKEND instead


-- Info: REALSENSE_VERSION_STRING=2.50.0
-- Setting Unix configurations
-- Info: Building with CUDA requires CMake v3.8+
-- CUDA_LIBRARIES: /usr/local/cuda-11.4/include /usr/local/cuda-11.4/lib64/libcudart_static.a;Threads::Threads;dl;/usr/lib/aarch64-linux-gnu/librt.so;/usr/local/cuda-11.4/lib64/libcusparse.so;/usr/local/cuda-11.4/lib64/libcublas.so
-- Building libcurl enabled
-- using RS2_USE_LIBUVC_BACKEND
-- Configuring done (0.1s)
-- Generating done (0.0s)
-- Build files have been written to: /home/marvin/Downloads/librealsense-2.50.0/build/external-projects/pybind11
[ 12%] Performing update step for 'pybind11'
[ 25%] No patch step for 'pybind11'
[ 37%] No configure step for 'pybind11'
[ 50%] No build step for 'pybind11'
[ 62%] No install step for 'pybind11'
[ 75%] Completed 'pybind11'
[100%] Built target pybind11
-- pybind11 v2.6.2 

随后出现的错误:

CMake Error at /usr/share/cmake-3.26/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find Python (missing: Python_INCLUDE_DIRS Development
  Development.Module Development.Embed) (found version "2.7.18")
Call Stack (most recent call first):
  /usr/share/cmake-3.26/Modules/FindPackageHandleStandardArgs.cmake:600 
(_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-3.26/Modules/FindPython.cmake:622 
(find_package_handle_standard_args)
  wrappers/python/CMakeLists.txt:63 (find_package)

解决方法

方法1:修改CMake的FindPython模块

(不推荐直接修改系统文件,建议复制该文件到项目目录下修改,再指定CMake使用项目内的模块)

  • 找到系统文件路径:/usr/share/cmake-3.26/Modules/FindPython.cmake
  • 打开文件,定位到调用find_package_handle_standard_args的代码段(对应错误提示的第622行)
  • 将参数里的Development、Development.Module、Development.Embed移除,重新执行CMake命令

方法2:明确指定完整Python参数,修正路径

原有命令里的Python库路径在aarch64架构的Jetson上可能有误,补充更多明确参数:

cmake ../ -DFORCE_LIBUVC=true\
-DCMAKE_BUILD_TYPE=release \
-DBUILD_WITH_CUDA=true -DBUILD_PYTHON_BINDINGS=true\
-DBUILD_NODEJS_BINDINGS=true -DPYTHON_EXECUTABLE=/usr/bin/python3.8\
-DBUILD_EXAMPLES=true -DBUILD_GRAPHICAL_EXAMPLES=true\
-DPYTHON_INCLUDE_DIR=/usr/include/python3.8 \
-DPYTHON_LIBRARY=/usr/lib/aarch64-linux-gnu/libpython3.8.so\
-DPython_INCLUDE_DIRS=/usr/include/python3.8\
-DPython_LIBRARIES=/usr/lib/aarch64-linux-gnu/libpython3.8.so\
-DPython_VERSION=3.8

方法3:安装Python3.8开发包

缺失Development组件通常是因为没装Python开发包,执行以下命令安装后重新运行CMake:

sudo apt-get install python3.8-dev

内容的提问来源于stack exchange,提问作者Bilal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 07:22:54