一.准备部分
Prerequisites:
1、更新Ubuntu 发行版,获取最新的稳定内核
sudo apt-get update && sudo apt-get upgrade && sudo apt-get dist-upgrade
检查内核版本,uname -r并注意下一步安装的内核版本。
更新操作系统启动菜单并重新启动,以强制执行正确的内核选择 sudo update-grub && sudo reboot
重启时,在Grub2启动菜单 - >“Ubuntu的高级选项”中打开启动进程,选择上一步安装的内核版本,并选择上一步安装的内核版本。如果没有显示引导菜单,请按住SHIFT键。
完成引导,登录并确认所需的内核版本:uname -r
2、下载librealsense源码:
git clone https://github.com/IntelRealSense/librealsense
其他版本源码下载地址:
https://github.com/IntelRealSense/librealsense/releases
3、安装依赖包
sudo apt-get install git libssl-dev libusb-1.0-0-dev pkg-config libgtk-3-dev
sudo apt-get install libudev-dev
sudo apt-get install libglfw3-dev
4、使用gcc -v确认当前gcc的版本,如果之前的步骤都正确完成的话,可以看到gcc 5.0.0或以上(对于ubuntu16 LTS最好也确认下gcc版本是否在4.9以上)
5、安装脚本与修补内核模块
5.1、安装 librealsense原文件目录下的许可脚本
进入librealsense的目录路径下,执行以下指令:
./scripts/setup_udev_rules.sh
或者:
sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d
sudo udevadm control --reload-rules && udevadm trigger
setup_udev_rules.s脚本中包含了
sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d
sudo udevadm control --reload-rules && udevadm trigger
这两句命令行
5.2、构建并应用修补的内核模块
./scripts/patch-realsense-ubuntu-xenial.sh
(实际操作后make error)
后面经过查找资料发现需要根据不同的ubuntu版本安装,对于Ubuntu 14/16/18 LTS需要执行下面的脚本命令:
./scripts/patch-realsense-ubuntu-lts.sh
(实际操作后make success)`
修补uvc模块:
./scripts/patch-arch.sh
通过检查生成的日志以及内核日志中的最新条目来检查修补模块的安装:
sudo dmesg | tail -n 50
特殊情况:
之前源码安装时忘记执行第5步,就进行了安装,可以安装成功,但后面在使用RealSense的Ros功能包即realsense-ros时,运行 roslaunch realsense2_camera rs_camera.launch会出现错误
Pixel format “W10” is not supported by the kernel, need a patch.
于是回来执行第五步操作,但执行./scripts/patch-realsense-ubuntu-lts.sh脚本时出现错误
Error when execute ./scripts/patch-realsense-ubuntu-lts.sh
Error Description:
make:
…
Patched kernels modules were created successfully
Replacing videodev :
Module videodev is used by videobuf2_core
Unloading dependency videobuf2_core
modprobe: FATAL: Module videobuf2_core is in use.
Failed to unload module videobuf2_core. error type 1 . Operation is aborted
Solution:
$ lsmod | grep videobuf2_core
videobuf2_core 40960 2 videobuf2_v4l2,uvcvideo
videodev 180224 3 videobuf2_core,videobuf2_v4l2,uvcvideo
$ sudo modprobe -r uvcvideo
$ lsmod | grep videobuf2_core
然后再执行./scripts/patch-realsense-ubuntu-lts.sh
二 安装
Building librealsense2 SDK
1、进入librealsense的目录路径下,执行以下指令:
mkdir build && cd build
cmake …/ -DBUILD_EXAMPLES=true
sudo make uninstall && make clean && make && sudo make install
一般头文件安装在/usr/local/include中
库文件安装在/usr/local/lib中
2、进入capture文件夹测试是否连接成功:
cd build/example/capture
./rs-capture
若连接成功,即会出现RealSense拍摄的彩色图像和深度图,若运行不成功,则需要进行固件更新
三 固件更新
更新DFU(Device Firmware Update)firmware
由于本人在之前的文章中已经介绍,在此就不重复了,大家可自行进行参考。