You're reading the documentation for a development version. For the latest released version, please have a look at Foxy.
Installing ROS 2 via RPM Packages¶
Table of Contents
RPM packages for ROS 2 Galactic Geochelone are currently available for RHEL 8. The target platforms are defined in REP 2000
Make sure you have a locale which supports
If you are in a minimal environment (such as a docker container), the locale may be something minimal like
We test with the following settings. However, it should be fine if you’re using a different UTF-8 supported locale.
locale # check for UTF-8 sudo dnf install langpacks-en glibc-langpack-en export LANG=en_US.UTF-8 locale # verify settings
You will need to enable the EPEL repositories and the PowerTools repository:
sudo dnf install 'dnf-command(config-manager)' epel-release -y sudo dnf config-manager --set-enabled powertools
Next, download the ROS 2 .repo file:
sudo dnf install curl sudo curl --output /etc/yum.repos.d/ros2.repo http://packages.ros.org/ros2/rhel/ros2.repo
Then, update your metadata cache.
DNF may prompt you to verify the GPG key, which should match the location
sudo dnf makecache
Desktop Install (Recommended): ROS, RViz, demos, tutorials.
sudo dnf install ros-galactic-desktop
ROS-Base Install (Bare Bones): Communication libraries, message packages, command line tools. No GUI tools.
sudo dnf install ros-galactic-ros-base
If you installed
ros-galactic-desktop above you can try some examples.
In one terminal, source the setup file and then run a C++
source /opt/ros/galactic/setup.bash ros2 run demo_nodes_cpp talker
In another terminal source the setup file and then run a Python
source /opt/ros/galactic/setup.bash ros2 run demo_nodes_py listener
You should see the
talker saying that it’s
Publishing messages and the
I heard those messages.
This verifies both the C++ and Python APIs are working properly.
Continue with the tutorials and demos to configure your environment, create your own workspace and packages, and learn ROS 2 core concepts.
The default middleware that ROS 2 uses is
Cyclone DDS, but the middleware (RMW) can be replaced at runtime.
See the guide on how to work with multiple RMWs.