Learn ROS Noetic installation on Ubuntu 20.04 LTS


Robotics is one of the fastest-growing areas which will change everything around us and also it not showing any signs of slowing down. With the continuous enhancement in robotics technology, developers also need to sync with the latest advancements in order to stay ahead of the competition. Therefore, it is essential to use most of the up-to-date software such as ROS Noetic. With this guide, we will learn how to install ROS Noetic on Ubuntu Focal 20.04 so beginners can get started right away!

What is ROS Noetic

ROS Noetic is the latest available version of the open-source Robot Operating System (ROS) at the time of writing this article; it is meant to install only on Ubuntu 20.04 and offers Long term support of 5 years. It is a software framework designed to help developers in building smart robots. With the collection of tools and intuitive interface, ROS Noetic makes it possible to quickly robotic applications.

The collection of tools ROS includes libraries, tools, simulations, visualization, driver interfaces, message-passing systems, graphical user interface implementations, debugging frameworks, and testing environments.

ROS Noetic installation steps for Ubuntu 20.04 LTS Linux

The steps we are performing in this installation guide can also be used on other Linux distros based on Ubuntu 20.04 Focal such as Linux Mint. However, at the time of writing this article, ROS doesn’t support Ubuntu Jammy, hence 22.04 users have to wait. Nevertheless, if it is necessary one can look for the Source code installation of this program.

1. Open Terminal Window

To perform the installation of ROS Noetic we need a command terminal and sudo user access. So, run the terminal app on your Ubuntu either by using the keyboard shortcut – Ctrl+ALT+T or from all applications.

2. APT Package Update

To mitigate compatibility errors and to ensure the stability & security of the operating system, we must update it from time to time. So, before going any further, let’s run the system update command on Ubuntu 20.04.

sudo apt update && sudo apt upgrade

Also install CURL, if you don’t have it already.

sudo apt install curl -y

3. Add ROS Noetic package repository

ROS Noetic is a free and open-source application but it is not available to install using the default package repository of Ubuntu 20.04 LTS. Therefore, we need to add  packages.ros.org to our source list. For that use the given command:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

4. Add ROS Noetic Key on Ubuntu 20.04

Well, we have added the repository from which we can download the packages needed to start the ROS Noetic installation process, but without a public key, it will not work. This is because the system requires it to verify its package source.

curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -

Before moving further refresh the APT package manager index cache, once more:

sudo apt update

5. Installing ROS Noetic on Ubuntu 20.04

The developer of the Robot Operating System offers it in different Debian package bundles so that users can have only what he or she needs. Here are the key ones to discuss:

Full RODS Desktop Installation

You will have a complete set of tools and libraries including 2D/3D simulators and 2D/3D perception packages. The command to install is:

sudo apt install ros-noetic-desktop-full
Full RODS Desktop Installation

ROS Desktop Version

This Desktop package will offer all basic ROS tools and libraries including rqt and rviz but without GUI.

sudo apt install ros-noetic-desktop
sudo apt install ros noetic ros base

ROS Base

Here you will not find a GUI like the above two discuss packages but all necessary ROS tools and libraries for packaging, building, and communication will be there.

Furthermore, we can install the individual package of ROS Noetic if we want, to know what are the available ones we can search for them using:

apt search ros-noetic

The above command will print all package lists available under the prefix “ros-noetic“.

6. Setup Environment Variable for ROS

We need to add a Setup.bash script available under the”/opt/ros/noetic/setup.bash” to our system path. The main purpose of this is to set environment variables used by ROS.

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc

7. Rosdep command

Rosdep is the command tool that is needed to install dependencies when we compile some new tools for ROS via the source. And it is also important to run some core components in ROS. Hence, use:

sudo apt install python3-rosdep python3-rosinstall python3-rosinstall-generator python3-wstool build-essential

To initialize the Rosedp

sudo rosdep init
sudo rosdep fix-permissions

To use it, here is the syntax

rosdep <parameter>


rosedep update

for help:

rosedep --help

Other Articles:

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.