ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
Running rosmake
is a superset of make
. In particular, rosmake
runs make
on all of a package's dependencies (as defined in manifest.xml
), including recursive dependencies. By contrast, make
just builds the current package.
You should run rosmake
the first time you build a package (say, when you first install it), when you change a package's manifest.xml
(in case you need to recursively build a newly-added dependency), or when a package's dependency needs to be rebuilt.
My workflow goes like this:
rosinstall ~/ros /opt/ros/diamondback
(this gets all of my source packages up-to-date)rosmake foo
(where foo
is the package I'm currently developing; this makes sure the dependencies and everything else are properly dealt with)foo
, just use make
.A note: the packages that are distributed as binaries (the .deb
files) include a ROS_NOBUILD
file that causes rosmake
to skip right over them; this causes them to (appear to) build very fast.