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

contributing to ros

asked 2013-08-28 09:42:02 -0500

vonovak gravatar image

Hi, I wrote a new package for ros groovy (here) and I would like to share it with others so that they can use just apt-get to install it. However, I have some questions before I do so:

  1. there is a static library that the node needs to run. What should my CMakeLists.txt look like so that the library gets installed when somebody uses apt-get install?

  2. This is more of a linux question: I read the page about contributing to ros - so I know I only share my repo. But the repo does not contain the executables. From what I have read online it seems that apt-get install does not involve any compiling - by using apt-get we are downloading executables right away. So where are they stored and how do they come to life?

thanks for anwerring

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted

answered 2013-08-28 23:21:26 -0500

tfoote gravatar image

1) Usually packages are built with shared libraries when being installed onto a system. I recommend you do some reading on CMake Tutorials in general.

To contribute code back to the community there's a Contributing link on the home page

And from that you specifically want to look at for releasing.

2) The released source is built into binary debian packages on a buildfarm and then stored in apt repositories. The web interface for the buildfarm is at and the packages are hosted at

edit flag offensive delete link more


I still don't quite understand the answer to 1. My node needs an external library that I have downloaded and compiled and put it in the lib directory of the package. It is also in the repo. Will it get installed when I do all the steps in the page you linked?

vonovak gravatar image vonovak  ( 2013-08-28 23:40:42 -0500 )edit

If you downloaded and compiled that I'd recommend to provide the sources and include them in the build instead of a pre-compiled library. For binaries you'd need to provide builds for every system that will be supported.

dornhege gravatar image dornhege  ( 2013-08-29 01:06:03 -0500 )edit

Question Tools



Asked: 2013-08-28 09:42:02 -0500

Seen: 353 times

Last updated: Aug 28 '13