ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

how do I create packages that generate messages for all other packages.

asked 2014-04-13 08:27:58 -0600

Kei Okada gravatar image

We're maintaining our custom made ros client library ( ). We'd like to create new package that holds all messages files that compiled into eus language, so that uses do not need to generate on their local machine. How do I create such a packages or how do I tell ros build firm to do that.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2014-04-13 09:25:21 -0600

ahendrix gravatar image

This is probably a bad idea, because there's no way to query for "all messages" in the ROS ecosystem, and users who have unreleased messages will still have to do their own message generation.

The two current approaches I've seen that work well are:

  • roscpp/rospy/roslisp approach: the rospy, roscpp and roslisp message generators are very lightweight, and are incorporated into the core message_generation package, so roscpp, rospy and roslisp messages are generated as part of the default message generation. If your message generation is simple and lightweight, you could petition to get it included here.
  • rosjava approach: rosjava is packaged and distributed separately through a maven repository (pretty standard for Java packages). Their build system generates a jar (package) for each message package, and they distribute compiled versions of the core messages. If a user is using core messages, the Java build system grabs them from the repository, otherwise they're built locally.
edit flag offensive delete link more



The *rosjava* approach has the disadvantage that it can never be "promoted" to become a language being support by default (by adding it to message_generation) in the way it is currently done. Therefore I recommend you to write a "geneus" (?) package similar to the existing generators: gencpp, genpy, genlisp.

Dirk Thomas gravatar image Dirk Thomas  ( 2014-04-13 19:05:58 -0600 )edit

Thanks for answer and comment.

Kei Okada gravatar image Kei Okada  ( 2014-04-14 16:59:11 -0600 )edit

Question Tools

1 follower


Asked: 2014-04-13 08:27:58 -0600

Seen: 165 times

Last updated: Apr 13 '14