Installation#

Installing binaries#

Beluga binaries are released to several ROS distributions, and thus are made available through package managers.

Important

Only beluga, beluga_ros, and beluga_amcl packages are available as binaries. The rest must be built from source.

Follow the official ROS documentation on how to setup apt sources for the distribution of choice. You may also want to consider using ros2-testing repositories to get the absolute latest release for the target distribution.

Then:

sudo apt install ros-${ROS_DISTRO}-beluga*

Building from source (with ROS)#

Tip

If you intend to contribute to Beluga, consider adopting Beluga’s development workflows.

Install ROS distribution#

Follow official ROS documentation on how to install the distribution of choice. ROS development tools will be necessary – colcon and rosdep at the very least.

Remember to source the corresponding installation from now on, as documented upstream:

source /opt/ros/${ROS_DISTRO}/setup.bash

If in doubt as to which ROS distribution to use, check the list of supported distributions.

Clone Beluga repository#

All packages in the Beluga project are ROS packages. Cloning them into a local workspace is thus best for subsequent build, install, and use:

mkdir -p ~/ws/src
git clone https://github.com/Ekumen-OS/beluga.git ~/ws/src/beluga

Install dependencies#

First of all, ensure your system and package manager are up to date before proceeding.

sudo apt update && sudo apt upgrade

Then use rosdep to install Beluga packages’ dependencies:

rosdep update
rosdep install -r --from-paths ~/ws/src/beluga -y -i -t build -t exec

Build and source workspace#

For ROS 2 and ROS 1 distributions alike, colcon can be used to build:

colcon build --packages-up-to beluga_example --cmake-args -DBUILD_TESTING=OFF

Alternatively, for ROS 1 distributions, you may use catkin_make_isolated instead:

catkin_make_isolated --only-pkg-with-deps beluga_example --install --cmake-args -DBUILD_TESTING=OFF

After building, don’t forget to source the environment:

source install/setup.bash
source devel/setup.bash