尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Ubuntu 22.04 安装 librealsense 完整指南:源码编译 5 步拿到第一路深度流

Ubuntu 22.04 安装 librealsense 完整指南:源码编译 5 步拿到第一路深度流 Ubuntu 22.04 安装 librealsense 完整指南源码编译 5 步拿到第一路深度流【免费下载链接】librealsenseRealSense SDK项目地址: https://gitcode.com/GitHub_Trending/li/librealsenselibrealsense 即 RealSense SDK 2.0是面向 RealSense 深度相机D400、D500 等的跨平台库提供深度/彩色流、IMU 数据与相机内外参标定。本文带你从源码编译方式在 Ubuntu 22.04 上完成一次完整安装配 udev 权限、打 uvcvideo 内核补丁、编译安装 SDK 到跑通验证。全部走完后你手上会有realsense-viewer可视化工具和一组可运行的示例程序能直接读出任意像素的距离值。场景自测先判断你该走哪条路先花 30 秒确认自己的情况决定阅读路径只想插上相机快速出图、部署到机器上跑不改源码直接跳到 DKMS 预编译包跳过编译环节。要写 C/Python 程序调用 SDK或需要自定义编译选项关闭 DDS、关图形示例等从 安装编译依赖 开始按主路径逐步执行。跑在 Jetson 上或用的是非 LTS 内核先看文末排障速查Jetson 另有专门文档 doc/installation_jetson.md。环境要求用文字说清楚官方支持 Ubuntu 20/22/24 LTSUbuntu 22.04 的 LTS HWE 内核 5.15、5.19、6.5、6.8、6.11、6.14 都有现成补丁文件见 scripts/ 目录下的realsense-*.patch。用下面两条命令自查lsb_release -a # 期望看到 jammy22.04 uname -r # 期望输出 5.15.0-x-generic / 5.19.x / 6.5.x 等 如果内核不在上述列表里补丁脚本找不到对应补丁文件会直接失败。先执行sudo apt-get update sudo apt-get dist-upgrade升级内核重启后再用uname -r确认。主路径源码编译1. 安装编译依赖执行什么官方文档故意把依赖拆成多条命令是因为部分平台一次性安装会触发依赖解析问题照抄即可sudo apt-get update sudo apt-get upgrade sudo apt-get install libusb-1.0-0-dev libudev-dev sudo apt-get install libssl-dev pkg-config libgtk-3-dev# 编译工具链 sudo apt-get install git wget cmake build-essential # OpenGL 相关仅构建图形化示例时需要纯无头部署可跳过 sudo apt-get install libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev at预期输出每条命令以Setting up ...正常收尾无 E: 报错。 如何确认成功cmake --version能输出版本号官方要求 3.8 以上建议用 apt 装到最新版。libudev-dev装上后 SDK 用事件驱动方式检测 USB 设备插拔比定时轮询更灵敏建议保留。2. 克隆源码并配置 udev 权限执行什么⚠️ 先把已插的 RealSense 相机全部拔掉再运行脚本否则会停在提示让你移除相机的地方。git clone https://gitcode.com/GitHub_Trending/li/librealsense cd librealsense ./scripts/setup_udev_rules.sh这条脚本把 config/99-realsense-libusb.rules 拷进/etc/udev/rules.d/并重载规则让普通用户无需 root 就能访问相机。 预期输出末尾打印udev-rules successfully installed。 如何确认成功ls /etc/udev/rules.d/ | grep realsense能看到99-realsense-libusb.rules。3. 打 uvcvideo 内核补丁RealSense 深度相机在 Linux 上依赖经过修改的内核驱动。这一步会从 Ubuntu 官方源拉取与当前内核匹配的源码、打上 RealSense 补丁相机格式、帧元数据、HID IMU 等编译出.ko模块并替换加载当前运行的 uvcvideo。sudo ./scripts/patch-realsense-ubuntu-lts-hwe.sh预期输出依次看到Fetching Ubuntu LTS tag ...、Applying realsense-uvc patch、Compiling uvc module最后一行是Script has completed. Please consult the installation guide for further instruction.如何确认成功sudo dmesg | tail -n 50能看到新的 uvcvideo 驱动注册信息即为成功。若出现module verification failed: signature ... tainting kernel这是内核 4.4 的常规签名告警无需处理。 分叉判断Ubuntu 20 且内核低于 5.13 时改用sudo ./scripts/patch-realsense-ubuntu-lts.sh。4. 配置 CMake 并编译执行什么mkdir build cd build cmake ../ -DBUILD_EXAMPLEStrue-DBUILD_EXAMPLEStrue表示连同realsense-viewer、rs-capture等示例与工具一起编译无 OpenGL/X11 的无头服务器追加-DBUILD_GRAPHICAL_EXAMPLESfalse只编命令行版本。 预期输出结尾出现Configuring done和Generating done没有FATAL_ERROR。 如何确认成功build/目录下生成了CMakeCache.txt。5. 编译并安装执行什么make -j$(($(nproc)-1)) sudo make install-j$(($(nproc)-1))并行编译、留出一个核心避免内存吃满。若编译时报gcc: internal compiler error通常是内存或 swap 不足——关闭占内存的程序虚拟机里把 RAM 加到 2 GB 以上再重试。 预期输出编译无 errormake install把动态库装进/usr/local/lib、头文件装进/usr/local/include、工具装进/usr/local/bin。 如何确认成功ldconfig -p | grep realsense能列出librealsense2.so.2。备选路径DKMS 预编译包与主路径的差异不克隆源码、不手动打内核补丁——librealsense2-dkms包会自动为当前内核编译加载补丁驱动librealsense2-utils自带 viewer 和工具二进制。权衡上手最快、后续apt upgrade即可升级但只覆盖 LTS HWE 内核 5.15/5.19/6.5且无法自定义编译。关键命令sudo mkdir -p /etc/apt/keyrings curl -sSf https://librealsense.realsenseai.com/Debian/librealsenseai.asc | \ gpg --dearmor | sudo tee /etc/apt/keyrings/librealsenseai.gpg /dev/null# 用 lsb_release 自动匹配仓库代号jammy/noble echo deb [signed-by/etc/apt/keyrings/librealsenseai.gpg] https://librealsense.realsenseai.com/Debian/apt-repo $(lsb_release -cs) main | \ sudo tee /etc/apt/sources.list.d/librealsense.list sudo apt-get updatesudo apt-get install librealsense2-dkms librealsense2-utils # 要自己编译程序时再加开发头文件包 sudo apt-get install librealsense2-dev装完重插相机运行realsense-viewer按结果验证一节走查即可。⚠️ 若你之前按主路径装过 udev 规则会报Multiple realsense udev-rules were found!——先跑./scripts/setup_udev_rules.sh --uninstall移除手动规则两套安装不要并存。结果验证确认深度流工作驱动补丁已生效modinfo uvcvideo | grep version:✅ 输出的版本字符串中包含realsense字样说明加载的是打补丁的驱动而非系统原版。SDK 已装好pkg-config --modversion librealsense2应输出版本号本仓库源码为 2.58.2以你实际安装版本为准。可视化验证realsense-viewer✅ 设备列表出现你的相机点播放后同时看到彩色流和彩色化的深度流在 Advanced Mode 标签页还能调整激光功率、曝光等参数跑一个最小示例源码方式编译安装后二进制在/usr/local/binrs-capture弹出 1280×720 窗口同时渲染深度、彩色画面并滚动打印各流的帧率FPS。这个示例的完整源码在 examples/capture/rs-capture.cpp是后续写自己程序的最佳起点。排障速查错误现象最可能原因解决方案Multiple realsense udev-rules were found!deb 包与源码手动安装并存二选一保留 deb 则运行./scripts/setup_udev_rules.sh --uninstall保留源码则dpkg -l \| grep realsense \| cut -d -f3 \| xargs sudo dpkg --purge后重跑安装补丁脚本卡在git.launchpad... access timeout防火墙/代理拦截了 Ubuntu 内核源访问终端设置系统代理后重跑export https_proxyhttp://代理服务器:端口再执行sudo ./scripts/patch-realsense-ubuntu-lts-hwe.shsudo modprobe uvcvideo后 dmesg 提示uvc kernel module is not loaded补丁模块与运行中内核版本不匹配uname -r确认内核是否为 5.15/5.19/6.5 等受支持版本不匹配就先升级内核再重跑补丁脚本补丁脚本编译时报fatal error: openssl/opensslv.h: No such file or directory缺 OpenSSL 开发头文件sudo apt-get install libssl-dev后重跑脚本cmake 配置后构建报fastrtps/fastcdr相关错误拉不到 Fast-DDS 网络依赖重新配置关掉 DDScmake ../ -DBUILD_WITH_DDSOFF -DBUILD_EXAMPLEStruedmesg 出现uvcvideo: module verification failed: signature and/or required key missing内核 4.4 对未签名模块的常规告警无需处理不影响功能进阶调优发布级构建切换 Release 模式解决什么默认构建是 Debug无优化、体积大帧率吃 CPU。 命令cd build cmake ../ -DCMAKE_BUILD_TYPERelease -DBUILD_EXAMPLEStrue sudo make install生效后的表现重新ldconfig -p | grep realsense确认指向新库后rs-capture的 CPU 占用与出图帧率明显改善。无头部署砍掉图形示例解决什么服务器没有显示器、没装 glfw/mesa图形示例编不过或白白增加编译时间。 命令cmake ../ -DBUILD_EXAMPLEStrue -DBUILD_GRAPHICAL_EXAMPLESfalse生效后的表现只产出命令行工具与核心库无图形依赖可直接部署到最小化系统。下一步到这里librealsense 已在你的 Ubuntu 22.04 上完成源码安装内核驱动、设备权限、SDK 与工具链全部就位realsense-viewer能出图、rs-capture能跑。接下来建议打开 examples/align/ 看深度对齐到彩色帧的完整用法再跑 examples/pointcloud/ 生成点云阅读 doc/post-processing-filters.md 了解空洞填充、时序滤波等深度数据优化手段需要录制现场数据时用 tools/recorder/ 的rs-record回放方法见 doc/record-and-playback.md。【免费下载链接】librealsenseRealSense SDK项目地址: https://gitcode.com/GitHub_Trending/li/librealsense创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表