Table of Contents

Installing ROS Melodic & ROS Dashing inside a Ubuntu Bionic chroot

nameserver 8.8.8.8
127.0.0.1	localhost
127.0.1.1	shirka
deb http://mirrors.ucr.ac.cr/ubuntu bionic main universe restricted multiverse
deb http://mirrors.ucr.ac.cr/ubuntu bionic-updates main universe restricted multiverse
deb http://mirrors.ucr.ac.cr/ubuntu bionic-backports main restricted multiverse
$ apt-get update
$ apt-get install sudo mc nano curl lsb-release gnupg2 apt-utils bash-completion locales
$ adduser user
$ adduser user sudo
$ visudo
%sudo   ALL=(ALL:ALL) NOPASSWD:ALL
$ su user

Creating ROS Melodic Workspace

Since ROS Hydro (ROS 1), ROS use Catkin for building all packages. The following links shows the basic steps for creating a Catkin Workspace.

After creating the workspace, build a basic package for testing purposes.

Creating ROS Dashing Workspace

Since ROS Crystal (ROS 2) to newer versions, ROS use Colcon for building all packages. This guide shows the basic steps for creating a Colcon Workspace.

$ source /opt/ros/dashing/setup.bash
$ sudo apt install python3-colcon-common-extensions
$ mkdir -p ~/ros2_ws/src
$ cd ~/ros2_ws
$ colcon build
$ source ~/ros2_ws/install/local_setup.bash && source ~/ros2_ws/install/setup.bash

After creating the workspace, lets build some examples packages for ROS 2.

$ cd ~/ros2_ws/src
$ git clone git clone https://github.com/ros2/examples
$ git checkout $ROS_DISTRO
$ cd ~/ros2_ws
$ colcon build --symlink-install
$ ros2 run examples_rclcpp_minimal_subscriber subscriber_member_function
$ ros2 run examples_rclcpp_minimal_publisher publisher_member_function