Catkin Tools
Introduction
Installation:
sudo apt install python-catkin-tools
It's time to migrate from
catkin_make
tocatkin build
!
catkin build
command
catkin build
commandrosbuild
was the very first build tool developed by ROS communityThen comes
catkin_make
to help automate the merged build process at the top levelTo address the numerous drawbacks of the merged build process,
catkin_make_isolated
was introduced to isolated build process for each packageFinally,
catkin build
is the most recent method to build packages, with improved performanceSee catkin history for more information
catkin devel space
In addition to the
merged
andisolated
devel space layouts provided bycatkin_make
andcatkin_make_isolated
, respectively,catkin_tools
provides a defaultlinked
layout which enables robust cleaning of individual packages from a workspace.Specifically, catkin packages are built in the
.private
hidden directory at the root of the devel space. Files in devel space are symbolic links to files in.private
folder.Additionally, to avoid race condition on setup files (e.g.,
setup.bash
) and other problems in parallelize building, inlinked
layout only one package generates these files. A package namedcatkin_tools_prebuild
may be built first (before all other packages) for this purpose.To use
merged
layout, run commandcatkin config --merge-devel
.
example catkin commands
FAQ & Troubleshooting
This warning can be ignored and it will continue to use the cached path. It often happens after new workspaces are established and setup files are sourced.
Alternatively, it can be resolved by explicitly extending other workspaces.
catkin config --extend /opt/ros/melodic
to revert,
catkin config --no-extend
Last updated