Installing RSB

Currently, the 0.9 version of RSB can be installed in the following ways:

From Source


In case you are unfamiliar with the git version control system, have a look at our short GIT primer.

  1. The whole source tree of RSB can be obtained from the repository located at “0.9” branch of URLs of individual implementations:


    Repository URL


    “0.9” branch of


    “0.9” branch of


    “0.9” branch of

    Common Lisp

    “0.9” branch of


    “0.9” branch of

  2. Build and install an implementation

Debian Packages

Debian packages for several versions of Ubuntu GNU/Linux are available from the CoR-Lab repository server.

  1. The following repository source line has to be added to /etc/apt/sources.list

    deb RELEASENAME main

    where RELEASENAME is one of precise, quantal.

  2. After that, packages can be installed via

    $ sudo apt-get install librsb0.9 cl-rsb rsb-tools-cpp0.9 rsb-tools-cl0.9

    The above command installs the C++ and Common Lisp implementations of RSB. Of course, it also possible to only install a subset of the above packages.


    Support for the Spread transport is no longer automatically installed with RSB. Support for Spread can be installed by executing

    $ sudo apt-get install spread librsbspread0.9


This installation method only works with Ubuntu GNU/Linux. More information can be found here.

PyPI Packages

For Python, platform-independent packages are pushed to the central repository server and can be installed with pip or easy_install.


pip is the recommended way of installing Python packages since some time and preferred over easy_install. On Ubuntu GNU/Linux systems, pip can be installed via the package python-pip.


The Python implementation of RSB is currently only available for Python 2.X. If the default Python version on your system is Python 3, ensure that you call the respective easy_install or pip version. These usually contain the Python version as a suffix to the name, e.g.: easy_install-2.7.

  1. The installation of the Python implementation of RSB requires the Google Protocol Buffers compiler (protoc) on your system. Before starting the installation, install protoc and ensure that this binary can be found from the PATH environment variable.

    To install protoc we recommend to use Debian packages on Ubuntu GNU/Linux and Homebrew on MacOS. The respective installation commands are:

    $ sudo apt-get install protobuf-compiler
    $ brew install protobuf
  2. The installation of the Python implementation of RSB requires the Google Protocol Buffers module on your system. Depending on whether pip or easy_install is used, do one of the following:

    $ easy_install protobuf
    $ pip install protobuf


    These commands will install protobuf for the whole system and require root permissions. If you only want to install protobuf for your local user, add the --user option to the call of easy_install or pip install. The same applies for the subsequently described installation of rsb-python itself.

  3. The rsb-python module can be installed by using one of the following functions:

    $ easy_install "rsb-python<=|version|.99999"
    $ pip install "rsb-python<=|version|.99999"


    These commands will currently install rsb-python in version 0.7 as this is at the time of writing the stable version. This will be changed once the backport of this rst file was done.

  4. If you plan to use the Spread transport, you need to additionally install the Python Spread module which is available at: The version of this module which is pushed to the PyPI is outdated and does not work with Spread version 4. You need to compile this module on your own.


RSB uses homebrew for installation on MacOS. For further information on the ideas behind homebrew please check this blog post. To install RSB from source on MaxOS the following steps are required:


As precondition XCode needs to installed. This can be easily achieved through the MacOS X App Store. A further requirement for installing Unixoid software components are the XCode Command Line Tools. They can be installed from within XCode (XCode ‣ Preferences ‣ Downloads) and install Command Line Tools.

  1. Bootstrapping homebrew itself:

    Installing homebrew on MacOS is simple as that:

    $ ruby -e "$(curl -fsSkL"


    After the installation, you can run the following command to check if homebrew was installed correctly:

    $ brew doctor
  2. Install the C++ implementation of RSB (core library and tools) with homebrew:

    $ brew tap corlab/homebrew-formulas
    $ brew install rsb-tools-cpp


    After the installation, you can run the following command to check if RSB was installed correctly:

    $ rsb_version


If the formula conflicts with one from mxcl/master or another tap, you can brew install corlab/homebrew-formulas/FORMULA.

You can also install via URL:

$ brew install


For MacOS X 10.8 users: on mountain lion, X11 is not provided anymore. For the core library of RSB, X11 is not needed, but many downstream projects require it. So, if you need to install XQuartz you can get it from This is recommended (but not necessary) also on earlier MacOS versions as XQuartz is more robust and up-to-date than the system-provided X11.

Binary Downloads for Java

Archives containing pre-built JAR-files of the Java implementation and required dependencies can be downloaded from the continuous integration server.

After downloading the archive, several JAR-files can be extracted from it. These files have to be placed on the Java classpath. Afterwards, the Java implementation of RSB should be usable in any Java program.

Binary Downloads of Tools

  1. Download the tools binary from the appropriate location:

  2. After the download, the tools file has to be made executable in most cases. This can be done for example by executing

    $ chmod +x tools

    in the download directory.

  3. The various tools are provided as symbolic links to the single tools binary. When invoked, it prints a list of these links and offers to create them:

    $ ./tools
    Create missing links now [yes/no]? y
    Creating symbolic link info -> tools


    The links can also be created as follows:


    $ ./tools create-links


    $ for alias in info logger call send ; do ln -s tools ${alias} ; done