Ask Your Question

Revision history [back]

Let's say you want to install the first stack you mentioned: cob_environments. Assuming you are on an officially supported version of Ubuntu and your repositories are setup correctly, you could first check if there are pre-built binaries available. For the cob_environments package, I could run

apt-cache search ros.*cob

in a terminal. On my system, I can see that there is a package called ros-fuerte-cob-environments. I could install this using apt-get, and the stack (plus all of its dependencies would be installed). For many users, if prebuilt binaries are available, this is the way to go.

In general when a stack or package is not available through your package manager you need to do the following things:

  1. Get a local copy of the source code, and make sure it is in your ROS_PACKAGE_PATH
  2. Check that you have all of the dependencies for that stack/package installed
  3. Install any missing dependencies. Tools like apt-get and rosdep are very useful for this!
  4. Compile the code

For the cob-environments stack, the only dependency that you likely don't have (assuming you have a "full-desktop" install of ROS) is cob_common This can be seen by looking at the dependencies link on the right side of this page. I'm going to walk you through installing cob_environments.

  1. To get a copy of the source code, we will use git. So first navigate to a directory that is on your ROS_PACKAGE_PATH, then run this command (you will need git installed)

    git clone
  2. We are going to use rosmake to try and build this package.

    rosmake cob_environments
  3. If you don't have cob_common, this will error out, and you will need to clone cob_common and build that before you can build cob_environments.

    git clone
    rosmake cob_common
  4. You should now be able to re-run rosmake cob_environments. If the process completes successfully, you should now have the stack successfully installed!

Note the process with SVN or CVS or Mercurial would be basically the same, but the actual commands for obtaining a copy of the repository would be slightly different.