Awesome
Distro | Build dev | Release |
---|---|---|
ROS 1 Noetic @ u20.04 | ||
ROS 2 Humble (u22.04) | ||
ROS 2 Iron (u22.04) | ||
ROS 2 Jazzy (u24.04) | ||
ROS 2 Rolling (u24.04) |
mrpt-ros
Fine-grained ROS packages for MRPT libraries and apps. This repository is a replacement for
the usage of the upstream MRPT/mrpt repo directly as the ROS
package mrpt2
.
Mapping between ROS packages <==> MRPT C++ libraries
These are the <depend>...</depend>
tags you need to include in
your project package.xml
depending on what C++ libraries you use:
ROS 2 package name | Included MRPT libraries |
---|---|
<depend>mrpt_libbase</depend> | mrpt-io, mrpt-serialization, mrpt-random, mrpt-system, mrpt-rtti, mrpt-containers, mrpt-typemeta, mrpt-core, mrpt-random, mrpt-config, mrpt-expr |
<depend>mrpt_libgui</depend> | mrpt-gui |
<depend>mrpt_libhwdrivers</depend> | mrpt-hwdrivers, mrpt-comms |
<depend>mrpt_libapps</depend> | mrpt-apps |
<depend>mrpt_libmaps</depend> | mrpt-maps, mrpt-graphs |
<depend>mrpt_libmath</depend> | mrpt-math |
<depend>mrpt_libnav</depend> | mrpt-nav, mrpt-kinematics |
<depend>mrpt_libobs</depend> | mrpt-obs, mrpt-topography |
<depend>mrpt_libopengl</depend> | mrpt-opengl, mrpt-img |
<depend>mrpt_libposes</depend> | mrpt-poses, mrpt-tfest, mrpt-bayes |
<depend>mrpt_libros_bridge</depend> | mrpt-ros2bridge |
<depend>mrpt_libslam</depend> | mrpt-slam, mrpt-vision |
<depend>mrpt_libtclap</depend> | mrpt-tclap |
<depend>mrpt_apps</depend> | Executable applications: RawLogViewer, rawlog-edit, rawlog-grabber, SceneViewer3D, etc. |
<depend>python_mrpt</depend> | pymrpt wrapper |
Keep in mind that including one C++ library automatically includes all its dependencies, so you do not need to list them all:
Usage
Once binary packages are available via apt install
from ROS build farm,
you can install required packages like:
sudo apt install ros-${ROS_DISTRO}-mrpt_libbase # or any other as needed
In the meanwhile, clone this repo and build with colcon as usual:
cd ~/ros2_ws/src
git clone --recursive https://github.com/MRPT/mrpt_ros.git
Build status matrix
Motivation for the change
- Faster build times (for each individual package). It was common to see ROS build farms to time out.
- Finer grained dependencies: ROS users can now specify in their
<depend>
tags a part of MRPT only, not the whole thing.
So, the ROS package mrpt2
is obsolete now (Jul, 2024).
License
BSD-3