Installation
Contents
Installation#
Requirements#
ROS2#
(Corail was tested with Foxy and Galactic)
This installation guide explain installation on Ubuntu/Debian using .deb packages. See the ROS2 documentation for further informations.
Add ROS repositories:
sudo apt update && sudo apt install curl gnupg2 lsb-release
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 $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null
sudo apt update
Install ROS2 Foxy (or Galactic):
sudo apt install ros-foxy-ros-base
For autocompletion when using command line install argcomplete:
apt install -y python3-argcomplete
LTTng (2.12)#
This installation guide is for Ubuntu 20.04 for other versions/distributions, see the LTTng documentation .
Add the LTTng repository:
apt-add-repository ppa:lttng/stable-2.12
apt-get update
Install the LTTng packages:
apt-get install lttng-tools
apt-get install lttng-modules-dkms
apt-get install liblttng-ust-dev
Realtime Configuration#
The instructions below aim at configuring your Linux system to have the necessary rights to launch your components using the real-time scheduler.
Create a realtime group:
sudo groupadd realtime
Add a ‘user’ to the realtime group:
sudo usermod -a -G realtime user
Give realtime authorizations to the realtime group by adding following lines in /etc/security/limits.conf:
@realtime soft cpu unlimited
@realtime - rtprio 100
@realtime - memlock unlimited
Installation#
Corail is made of several packages, corail_core implementes the min functionalites and depends on corail_tracing that use LTTng to provide tracing functionalities. Corail_examples is not needed to build corail_core but contains examples and can be a good place to start using corail.
Create a Corail workspace and download the corail packages:
mkdir corail_ws
cd corail_ws
git clone -b v1.1.2 https://gitlab.com/corail1/corail_core.git
git clone -b v1.0 https://gitlab.com/corail1/corail_tracing.git
git clone -b v1.1 https://gitlab.com/corail1/corail_examples.git
Source your ROS2 installation and build this workspace:
source /opt/ros/foxy/setup.bash
colcon build
Source the new built workspace and test your installation:
source ./insall/setup.bash
ros2 run corail_examples pub_sub
if you see something like this your installation is succesfull:
[INFO] [1624290258.998868676] [Publisher]: message sended
[INFO] [1624290259.098668851] [Subscriber]: message received
[INFO] [1624290259.998631609] [Publisher]: message sended
[INFO] [1624290260.098588136] [Subscriber]: message received
[INFO] [1624290260.998628057] [Publisher]: message sended
[INFO] [1624290261.098594423] [Subscriber]: message received
[INFO] [1624290261.998640839] [Publisher]: message sended
[INFO] [1624290262.098583640] [Subscriber]: message received
[INFO] [1624290262.998621424] [Publisher]: message sended
[INFO] [1624290263.098584060] [Subscriber]: message received
[INFO] [1624290263.998637151] [Publisher]: message sended
[INFO] [1624290264.098586120] [Subscriber]: message received
Corail is free software: you can redistribute it and/or modify it under the terms of the GNU LESSER GENERAL PUBLIC LICENSE as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.