Note: This tutorial assumes that you have completed the previous tutorials: Using ROSBUILD with Catkin.
(!) Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags.

Switching from rosbuild to catkin

Description: How to change packages to be catkin-based.

Tutorial Level: INTERMEDIATE

Introduction

Migrating the build-system of existing software always requires work and careful thought. Here are some guidelines to help you along.

Using a catkin workspace

If you locally have a workspace that you used with ROS fuerte or electric, you need to create a separate workspace for packages migrated to catkin.

It is probably wise to move your stacks/packages into the new workspace one at a time, switching to catkin one at a time.

Branching off fuerte-devel

Assuming you have your source under source-control (which you should), it may be good to keep a branch of your sources around in a state that can be build with ROS Fuerte.

At Willow Garage, it is now common to have branches for each ROS distribution, so you might just go and call that branch "fuerte-devel".

Migrating stacks and packages

catkin/migrating_from_rosbuild

Migrating documentation

Do not forget that you also may have documentation in your sources, personal webpages and such, those also need to be updated.

Migrating roswiki pages

You may have instructions on wiki pages for how to build your package, here are guidelines of how to provide new build instructions while keeping the earlier ones around.

Use the wiki buildsystem macro to declare the different ways, e.g.

<<Buildsystem()>>

{{{{#!wiki buildsystem rosbuild

Call:
{{{
$ rosmake package_name
}}}
}}}}

{{{{#!wiki buildsystem catkin

Call:
{{{
$ cd ~/catkin_ws
$ catkin_make
}}}
}}}}

Result:


Call:

$ rosmake package_name

Call:

$ cd ~/catkin_ws
$ catkin_make


note the use of 4 curly braces {{{{ to escape 3 curly braces {{{

Wiki: cn/catkin/Tutorials/convert_rosbuild_to_catkin (last edited 2014-05-02 05:25:49 by flluo)