[ros-users] Changes&fixes on RTT-ROS typekit generation

Peter Soetens peter at thesourceworks.com
Fri Jul 1 12:43:16 UTC 2011

We had reports about several issues with the RTT-ROS typekits:
( http://www.ros.org/wiki/rtt_ros_integration )

1. Sometimes necessary to use 'make' twice (after a make clean)
2. Undefined symbols when inluding the <foo_msgs/typekit/bar.hpp> file
3. The generation of 'Project-gnulinux.pc' instead of 'rtt_foo_msgs-

In addition, the typekit generator generated files with the '.hpp' extension 
while ROS uses .h . For consistency, All generated ROS typekit headers will 
end in .h. For example:

// Include these headers to speed-up compilation of your component:
// make sure to set rtt_ros_integration_geometry_msgs in your manifest
// use one type of geometry:
#include <geometry_msgs/typekit/Pose.h> // previously: Pose.hpp
// use all /most types of geometry:
#include <geometry_msgs/typekit/Types.h> // previously: Types.hpp

All these issues are fixed now, and I'll set in execution an new release of the 
0.4.0 .deb packages.

Related, we have also been working on the 'refactoring' branch of the 
orocos_toolchain_ros. It's a huge structural improvement, allowing more 
consistent stack&package names and contents, but since our package names 
change, will only be part of the next ROS release, Electric. Electric will use 
the to be released Orocos Toolchain 2.5. We'll provide a script that updates 
your manifest.xml files. Your CMake files which use Orocos macros will remain 
the same. If there's interest, we could allow to let old/new style coexist, 
but we fear this will only cause confusion on which kind to use...

The new structure are these stacks:
orocos_toolchain      # unmodified Orocos Toolchain packages
rtt_common_msgs  # typekits for common_msgs
rtt_ros_comm           # typekits of ros_comm
rtt_ros_integration  # rtt_rosnode, rtt_tf

If you're willing to test this branch, check out the 'refactoring' branch at 
For Electric, we'll have to split up the git repositories further, since 
stacks in git must be put in separate git repositories.


More information about the ros-users mailing list