ROS1对Ubuntu的支持只到20.04,如果要在22.04上安装ROS1只能从源码编译安装。
1. 添加源
由于ROS1官网不支持,因此只能添加ROS2的源
$ sudo apt update && sudo apt install curl
$ sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
$ sudo apt update
2. 安装编译依赖项
$ sudo apt-get install python3-rosdep python3-rosinstall-generator python3-vcstools python3-vcstool build-essential
$ sudo pip3 install -U rosdep rosinstall_generator vcstool
$ sudo pip3 install --upgrade setuptools
3. rosdep安装依赖,这一步不用折腾国内怎么访问GitHub的问题了,因为ROS1官网不支持Ubuntu22.04,所以每个依赖项的手动安装。
4. 新建catkin workspace
$ mkdir ~/ros_catkin_ws
$ cd ~/ros_catkin_ws
5. 拉取ROS Noetic源码
$ rosinstall_generator desktop --rosdistro noetic --deps --tar > noetic-desktop.rosinstall
$ mkdir ./src
$ vcs import --input noetic-desktop.rosinstall ./src
`vcs import` 这一步因为墙的原因大概率会失败(terminal中打印EEEE,成功会打印....), 直接替换noetic-desktop.rosinstall中所有的github.com为kg