New Tool: roscompile - Catkin Metadata Helper

| No Comments | No TrackBacks
From David Lu! via ros-users@

I have a confession to make. I'm not very good at Catkin. One reason
is because there is a lot more metadata to maintain. Unlike Ye Olde
Rosbuild, where you could add a dependency by adding a single tag in
the manifest, Catkin requires you add the build and run dependencies
to the package.xml, as well as add the dependencies in the
CMakeLists.txt in a couple places.

That's why I've developed a tool called roscompile, which I've found
invaluable for cleaning up my packages for release. It attempts to do
the hard work for you by 'compiling' the information that already
exists in the package.

 * Did you just add a dependency on a new package in your source code?
roscompile will read the source and add the appropriate tags to your
package.xml and CMakeLists.txt.

 * Create a new launch file that uses map_server? roscompile reads
launch files to add run_depends.

 * Add a new msg/srv/action/dynamic_reconfiguration/plugin? roscompile
generates the metadata for that too.

Check it out here:
(contains a full list of features and issues page)

Of course, the tool is far from perfect. It should not be used to
blindly make changes to critical repos. I welcome collaboration to
help cover people's use cases other than my own.

No TrackBacks

TrackBack URL:

Leave a comment

Find this blog and more at

Please submit content to be reviewed by emailing

Monthly Archives

About this Entry

This page contains a single entry by Tully Foote published on August 10, 2015 1:18 PM.

3rd ROS Meetup in Korea! was the previous entry in this blog.

Manning Publications - Looking for potential authors for Robot Operating System (ROS) book is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.