The catkin_tools
build plugin is useful when building ROS parts.
This plugin depends on the catkin plugin. The catkin plugin runs the configuration process that allows catkin_tools to run.
This plugin uses the same keywords and configurations as the catkin plugin. The difference is the installation of catkin_tools and, consequently, using catkin_tools to build.
For examples, search GitHub for projects already using the plugin.
Plugin-specific features and syntax are dependent on which base is being used, as outlined below:
This plugin uses the common plugin keywords as well as those for “sources”. For more information, see Snapcraft parts metadata.
base: core20
For core20, this plugin is designed to work with the ROS 1 Noetic Extension. If not using this extension, it is required to set the ROS_DISTRO
environment variable to noetic
using build-environment
.
This plugin enables the following plugin-specific keywords on core20:
-
catkin-tools-packages
(list of strings) List of catkin packages to build. If not specified, all packages in the workspace will be built. If set to an empty list ([]
), no packages will be built, which could be useful if you only want ROS debs in the snap. -
catkin-tools-cmake-args
(list of strings) Arguments to pass to cmake projects.
base: core|core18
Snapcraft 7.x or lower is required to build core18 snaps. Snapcraft 8 does not support core18. Switch to snapcraft 7.x with:
sudo snap refresh snapcraft --channel=7.x/stable
.
This plugin enables core|core18 properties of the catkin plugin.