Rock

the Robot Construction Kit

Go to master Flavor stable
Installation

This page explains how to install Rock and where to look for more information (tutorials, …).

Level of support

This section lists the operating systems where Rock is well tested, is untested and where the status is unknown. For well tested operating systems, a build server makes sure that Rock builds fine, and it is known to be actively used. Untested operating systems have had users (so, it did work at some point), but it is unknown whether it is still being actively used. Finally, unknown status operating systems are OSs where Rock should work, but we have had no known report of its success or failure.

Well tested OSs

Ubuntu Latest LTS and later (currently anything newer than 12.04). We let 6 months after a LTS release before deprecating the previous LTS.
Debian testing or unstable

Experimental OSes

Gentoo Last known working version end of 2011
Arch Last known working version end of 2013
OpenSuse Beta state, started 2014
Fedora Last known working version 2012

Feel free to ask on the mailinglist to ask for support for porting to another System. Please let us know any experience if you are using one of the above listed OSs.

This site is not affiliated with or endorsed by the Fedora Project. The Gentoo logo is a trademark of Gentoo Foundation Inc. and the rock-robotic framework is not part of the Gentoo project, and is not and is not directed or managed by Gentoo Foundation, Inc. Simliar statements are true for all listed logos and systems. The Rock-Robotic framework itself is independent from the operation systems and maintained on its own.

Status for other

Other Linux distributions Should work fine. No osdeps.
Mac OSX Known to have problems. No osdeps.

Installation: the easy way

  1. Make sure that the Ruby interpreter is installed on your machine. Rock requires ruby 1.9.2 or higher, which on Debian and Ubuntu are provided by the ruby1.9.1 package.

    ruby --version
    
  2. Create and “cd” into the directory in which you want to install the toolchain.
  3. To build the core system, use this bootstrap.sh script. Save it in the folder you just created. For other options, see below.

    There is an important note for long-term Orocos users. See the red box below.

  4. In a console, run

    sh bootstrap.sh
    

    If the command fails (1) report the problem / error to the rock-users mailing list, (2) whatever you try to fix it, restart the bootstrapping by doing.

    rm -rf autoproj
    sh bootstrap.sh
    
  5. Important: as the build tool tells you, you must load the generated env.sh script at the end of the build !!!
    • source it in your current console

      . ./env.sh

    • but also add it to your .bashrc: append the following line at the end of $HOME/.bashrc

      . /path/to/the/directory/env.sh

  6. Read the autoproj guide for basic usage to know the basic operations of the build system. More bootstrapping documentation is also available at the same place

Other bootstrapping options

  • to build all of Rock, use this bootstrap.sh instead of the one listed above. ‘'’This is really meant for continuous integration servers’’’. It is going to build all the packages that are defined within Rock, which is probably not what you want. You probably want to install the base system and then cherry-pick the packages you want. Have a look at the package directory and add the package names to the layout section in autoproj/manifest. For instance, if you want to get the Xsens IMU component, the layout section should look like:

    layout:
       - rock.core
       - drivers/orogen/xsens_imu
    

Important for existing Orocos users The development workflow in Rock currently disables the Orocos deployer and the RTT scripting language by default, as they are quite expensive on the build times. Select “yes” at the “compatibility with OCL” question during the build to reenable this.

Maintaining a Rock installation

Once Rock is installed, you can update your installation by going to the root of the installation folder and do

autoproj update
autoproj build

You might have to reload the env.sh script after that as well, to export updated environment variables into your current shell. Simply opening a new console will do the trick (given you have added sourcing env.sh to your .bashrc).