RK3588安装ROS 解决Rviz以及Gazebo报错问题


Info
Operating System & Version Ubuntu 20.04
Kernel Version (Linux Only) 5.10.110
Platform ROC-RK3588S-PC

一、前言

记录一下在RK3588上安装ubuntu20.04和ROS的过程,很早之前配置过,最近又重新配置了一遍,特此记录一下。

二、Ubuntu20.04刷写

这里就不做详细介绍了,官方的wiki写的比较清楚,下载好img文件以及安装好驱动,用RKDevTool刷写即可,这里建议直接使用下载的img文件中附带的工具即可。

三、ROS安装

  • ROS安装 版本noetic
    • sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
    • sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
    • sudo apt update
    • sudo apt install ros-noetic-desktop-full
    • echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
  • 测试ROS
    • 打开三个终端,分别输入
    • roscore
    • rosrun turtlesim turtlesim_node
    • rosrun turtlesim turtle_teleop_key
  • 关于Rviz,Gazebo运行报错的问题 rviz,gazebo是基于GLX编写的,我们系统目前只支持EGL,所以他们无法使用GPU加速,同时需要安装GLX库才能能够正常运行。
sudo apt install -y libgl1-mesa-glx libgl1-mesa-dri libglx-mesa0
sudo reboot

如果是在wayland下运行Rviz,rqt和Gazebo等程序需要使用XWayland。使用 QT_QPA_PLATFORM=xcb 强制Qt应用程序使用X11

QT_QPA_PLATFORM=xcb rviz
QT_QPA_PLATFORM=xcb rqt
QT_QPA_PLATFORM=xcb gazebo
# 也可以将该环境设置到.bashrc,就可以直接运行rviz等程序。
echo "export QT_QPA_PLATFORM=xcb" >> /~/.bashrc