根据这篇文章安装鲁班猫4(RK3588S)配置Realsense SDK和Realsense ROS(D435i T265)-CSDN博客
但是其中wget得到的.sh文件会乱码,导致文件没法运行,建议直接在这里:
librealsense/scripts at v2.50.0 · IntelRealSense/librealsense (github.com)
下载单独的libuvc_installa
tion.sh文件,这个可以运行。
运行后在主目录会得到librealsense_build文件夹,在build目录下:
cmake ..
make -j4
运行rs-enumerate-devices,正常。
运行realsense-viwer,显示
mesa loader: fail to open Rockchip.
libgl error failed to authenticate magic 2。
Rockchip即瑞芯微。网上搜索到相似类型错误libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: 无法打开共享对象文件: 不是目录 (searc-CSDN博客
解决方法:安装open3d
pip install open3d
安装后无用。
同时,运行rviz,会出现这样的错误
libGL error: MESA-LOADER: failed to open rockchip: /usr/lib/dri/rockchip_dri.so:无法打开共享对象文件:没有那个文件或目录(search paths /usr/lib/aarc64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: failed to load driver: rockchip
错误提示中有一个关键信息:
rockchip_dri.so
这是一个动态链接库,是一个用于rockchip处理器的图形驱动程序,所以下一段错误提示说failed to load driver不能加载驱动器(这个错误提示在启动realsense_viewer时也会有)。所以要找到这个动态连接库rockchip_dri.so。
思路这个错误和运行realsense-viewer时出现的一样,可以作为一个切入点。
rockchip_dri.so是一个动态链接库,它包含在mesa图形库中:Linux aarch64交叉编译之 mesa图形库_mesa交叉编译-CSDN博客
整了好久还是解决不了,但是运行
roslaunch realsense_camera rs_camera.launch
rostopic list
能看到有摄像头发送的消息,所以不纠结realsense_viewer出问题,直接在ros中接收消息。
我尝试在ubuntu22.04中编译mesa21.3.0,但是生成的.so文件中没有rockchip.so,根据Linux aarch64交叉编译之 mesa图形库_mesa交叉编译-CSDN博客
应该有这个文件在dri目录下,这篇文章的日期是 2023-08-19,我应该选择更新的mesa进行编译。
2023/11/23
给鲁班猫4安装ubuntu22.04,并尝试编译mesa21.3.0-rc1,在
/lib/aarch64-linux-gnu/dri
下生成了rockchip_dri.so文件!!!!!!!!!!!
2023/11/25
同事给推了一篇文章RK3588的GPU驱动和桌面环境-CSDN博客
2023/11/30
之前把rockchip_dri.so文件放到了鲁班猫的/usr/lib/aarch64-linux-gnu/dri下,之前的警告没在出现,但是运行rviz出现了新的警告:
libGL error: MESA-LOADER: failed to open rockchip: libLLVM-14.so.1: 无法打开共享对象文件: 没有那个文件或目录(search paths /usr/lib/aarch64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix -dri)
2023/12/7
带着错误用了一段时间后发现只要不在鲁班猫下运行图形化界面,就不会报错,所以如果有运行rqt_image_view rviz 的需求,可以设置ros主从机,在虚拟机作为从机订阅作为主机的鲁班猫发布的话题。也能查看rviz中的内容,只不过显示的速度取决于网络速度。