Skip to content
This repository has been archived by the owner on Jan 23, 2024. It is now read-only.

Catkin Command Line Tools

Paul Furgale edited this page Aug 22, 2014 · 19 revisions

Short reasoning behind this:

Catkin can be a little slow for two reasons:

  • Catkin processes the dependencies of your workspace before starting to build the actual packages.
  • Catkin parallelizes the build of object files inside a package, but does not build packages in parallel.

One reason for that is that catkin creates a single make target for all packages in your source space. A new command called catkin-make-isolated builds each package in the workspace individually (cmi ROS). This can be parallelized better by resolving dependencies on the fly and therefore speeding up your build significantly.

This feature is part of the catkin-tools, which is the preferred way of building catkin workspaces.

Documentation of catkin-tools

Can be found here.

Good to know commands of catkin

  • catkin build: Verb for building a catkin workspace <commands/catkin_build>
  • catkin list: Verb for finding and listing information about catkin packages <commands/catkin_list>

Installing pcmi/catkin as part of catkin-tools:

sudo apt-get install python-setuptools
cd /tmp
git clone https://github.com/catkin/catkin_tools.git
cd catkin_tools
sudo python setup.py install

Using parallel catkin

From now on you can issue a parallel catkin_make by using the command catkin build where you have used catkin_make before, e.g.:

cd $CATKIN_WS
catkin build

Debugging failing packages

Catkin-tools debugging documentation