Skip to content

Wiki

ROS environment setup

About 6 min read

ROS Robot Operating System Tutorial

ROS2 Robot Operating System Tutorial

ROS1 has already reached EOF, and the official recommendation is to use ROS2.

1.Recommended build environment

1.1.Option 1 (Recommended)

ROS1=Kubuntu20.04**(Both Noetic and 20.04 have reached end of life)**

ROS2=Kubuntu22.04+

It is still recommended to use 22.04 + HumbleThe main differences among the LTS versions Noetic, Humble, and Jazzy are as follows:

  1. Noetic is the LTS (Long Term Support) version of ROS1, and it will reach EOF (End of Life) on May 31, 2025. Its built-in algorithms are relatively old and depend on other non-built-in algorithms, but it has the most tutorials and relatively extensive support for third-party algorithms.

  2. Humble is the first LTS of ROS2, supported until May 31, 2027, or Turtle Day. It includes both the older Gazebo Classic and the newer Ignition Gazebo (the only ROS version that supports both the old and new Gazebo versions relatively well), offering a relatively broad range of options. Its built-in algorithms are relatively new, its tutorials are gradually increasing, and third-party algorithms are also gradually increasing. Many people using ROS1 are transitioning to ROS2 Humble.

  3. Jazzy is the second LTS of ROS2, supported until May 31, 2029, or Turtle Day. Based on Humble, it adds some features, but only supports the new Gazebo Sim. There are very few tutorials for ROS2 Jazzy, and many third-party algorithms have not released corresponding versions for Jazzy. However, from what has been seen so far, Jazzy is compatible with many Humble algorithms and tutorials. Currently, aside from needing to change some markup language tags due to the renaming of the new Gazebo, no other code incompatibilities have been found.

1.2.Option 2 (also recommended, but requires learning Docker as well)

  1. System distribution: Fedora KDE (seniors highly recommend it; choosing another Linux distribution you like is also fine)

  2. ROS1 Noetic installation method: Docker

  3. ROS2Humble/Jazzy installation method: Docker, see details inDocker tutorial

1.3.Option 3 (not recommended)

  1. System distribution: Kubuntu 22.04 Jammy LTS / Kubuntu 24.04 Jammy LTS

  2. ROS1 Noetic installation method: Southwest Jiaotong University's PPA (see the ROS documentation above, amd64 only (x86_64))

  3. ROS2 Humble / ROS2 Jazzy installation method: official binary installation method (see the ROS2 documentation above)

1.4.Solution 4 (can be used)

  1. System distribution: Windows 10 and above

  2. WSL2 distribution: Ubuntu24.04 Noble LTS

  3. ROS1 Noetic installation method: PPA from Southwest Jiaotong University expert (see the ROS document above, amd64 only (x86_64))

  4. ROS2 Jazzy installation method: official binary installation method (see the ROS2 document above)