RoboGen Online

oldonlineui      oldonlineui2

Open RoboGen Online here


Alternatively, you can run RoboGen as desktop client (Windows | Linux | Mac OS). See instructions below. If you have any questions or issues with the software, please let us know at the RoboGen users’s group.

Installation under Windows

Note: We currently distribute a pre-compiled version of RoboGen for Windows 7, 8 and 10. If you are running a different version of windows you may have to compile from source. (If you are running Windows 10, you could consider to install UNIX bash . You can find more details in MSDN and here. )

Download RoboGen for Windows here.

Tips for working with Windows

Before we get started with the installation of RoboGen, let us give three tips for working with Windows.

First of all, we recommend enabling file extensions in the explorer, so that you know what kinds of files you deal with. Open any folder in the explorer, and in the explorer window, select Organize -> “Folder and search options”. Go to the “View” tab and untick “Hide extensions for known file types”.

Second, we recommend downloading Notepad++ to use as a versatile text editor. Whenever you open a text file of unknown format, you are prompted to select a program to open it with. Select “Select a program from a list of installed programs”, click “OK” and in the next window, select Notepad++. We recommend using Notepad++ as the default program for all text files. You can make Notepad++ the default for a file type by right-clicking, selecting “Properties” and changing the “Opens with” parameter.

Third, a short intro to using the command line, which will be used to launch all RoboGen programs: Open the command line by clicking start and typing “cmd” and hitting enter. To go to a certain folder, click on the address line of that folder, copy it and paste it into the command line like so:

cd <paste the folder location here by right-clicking and selecting "Paste">

You can verify the folder by typing “dir”, which will list the folder contents. To launch a program which is contained in the folder, simply type its name (and specify parameters if necessary) to launch it. In Mac and Linux, you need to add “./” in front of the program, but here you do not need to.

Install RoboGen™

Simply download the RoboGen software for Windows from here to and extract it. Open the robogen folder in the command line according to the above instructions. You can now continue to usage examples to start using RoboGen.

Install from Source

If you wish to install RoboGen from source on Windows, click here for instructions.

Other Operating Systems (Linux, Mac OS, etc.)

If you are running Linux, Mac OS, some other operating system, or you just want to be able modify the code then you should install from source.  Here we provide instructions for Ubuntu Linux (well tested), Windows 7 and 8 (moderately well tested), and Mac OS (not as well tested).  If you run into any difficulties, head on over to our Google Group and ask for help.


Ubuntu Linux

Note: Reference Linux is Ubuntu 14.04 LTS, but you should be able to run on other versions of Linux as well. You could also use Windows 10’s Ubuntu bash terminal.

Note: We assume that as a Linux user you know how to use the terminal. Otherwise, we recommend looking at a tutorial.

Preparing your environment

Type the following on the command line to install the necessary dependencies and tools:

sudo apt-get install zlib1g zlib1g-dev libboost1.54-all-dev libprotobuf-dev protobuf-compiler \
gnuplot libopenscenegraph-dev libopenscenegraph99 cmake build-essential \
libtool automake libpng12-dev libjansson-dev git

Note: If you are using a different version of Ubuntu replace libboost1.54-all-dev and libopenscenegraph99 with the versions that are available in your repositories (tested with Boost 1.48 or newer and libopenscenegraph80). For ubuntu 15.04 use libopenscenegraph100v5 and libboost1.58-all-dev instead.

Note: If you wish to generate files to use with the WebGL Visualizer, we recommend installing the latest version of jansson from source.  This will allow you create significantly smaller simulation files.

Note: We also recommend installing nautilus-open-terminal (restart with ‘nautilus -q’ afterwards) so that you can open the terminal in a given directory with a right-click. For other distributions, package names may vary. 

Note: if you would like to be able to use scriptable scenarios for writing custom fitness functions and scenario configurations without needing to modify the code, then you will additionally need Qt5, since this functionality relies on QtScript. This can be done as follows.  (Without this, RoboGen will still build, but this functionality will be disabled).

sudo apt-get install qt5-default qtscript5-dev

Next, download the Open Dynamics Engine version 0.14 and extract it using the following commands.

wget ""
tar -zxvf ode-0.14.tar.gz

Install the ODE and configure it using following commands. (For further reference in installing use ‘BUILDING WITH AUTOTOOLS’ in INSTALL.txt ).

cd ode-0.14
./configure --enable-double-precision --with-cylinder-cylinder=libccd 
sudo make install -j

Now Proceed to Compiling RoboGen on Mac/Linux.


Mac OS

Note: This has been tested on OS X version 10.8.4 (there are some comments for 10.6.8) and might work differently with other versions

Important: In the Mac terminal you need to type “./” in front of the name of a program located in the current directory to execute it.

Preparing your environment

First, you will need to install the command line tools for Mac, if you haven’t done so yet. We will be working out of the terminal, which you can find under Applications/Utilities. Type “gcc -v” to see whether you have the command line tools installed. If gcc is not found, you need to install the command line tools. To do so, go to (you will need an Apple ID), browse for “command line tools” (for Mac 10.6: Xcode 3.2.6 and iOS SDK for Snow Leopard (skip iOS tools when installing – untick iOS in “essentials”)), download and install. Now, when you type “gcc -v”, you should see some information about your freshly installed gcc compiler.

To install the dependencies that will be used for RoboGen, we are going to use the Brew package manager. If you already have macports or fink installed, you should use those. To install brew, type:

ruby -e "$(curl -fsSL"

You can view a basic brew help typing “brew help”. As the brew installation suggests, we will run the brew self-checks before doing anything else:

brew doctor

If possible, you should fix all warnings before continuing. Next, we install all dependencies that are available through brew. We must first change the owner of /usr/local though:

sudo chown -R `whoami` /usr/local

Installing libraries

brew install cmake libpng boost protobuf gnuplot open-scene-graph open-scene-graph jansson ode \
--enable-double-precision --enable-libccd

During the installation, you might be prompted to obtain XQuartz. Get it from and re-run the installation command.

Now Proceed to Compiling RoboGen on Mac/Linux.


Compiling RoboGen on Mac/Linux.

Get the source code

Now you can either download the latest release from github, or clone the repository for the most bleeding edge code:

Clone from Git

Open the directory where you want to install RoboGen in the terminal and clone the repository:

git clone


cd to the robogen/build directory and execute:

cmake -DCMAKE_BUILD_TYPE=Release -G"Unix Makefiles" ../src/
make -j3

Note: The -j flag of make enables parallel build. We have observed that fully parallelizing can make the system lag, so we recommend using one instance less, which is 3 for a four-core system.

Note: On Mac 10.6 Snow Leopard you’ll need to go into src/cmake/CustomPath.cmake and change set (PNG_LIBRARY “${UTILS_PATH}/lib/libpng.a”) to set (PNG_LIBRARY “${UTILS_PATH}/opt/libpng/lib/libpng.a”)

If everything compiles you can continue to usage examples to start using RoboGen.

If anything goes wrong, it is possible that your dependencies are installed in different directories than ours. The first place to look for solutions is robogen/src/cmake/CustomPath.cmake, which specifies the locations of various dependencies.  If you can’t figure it out on your own, head on over to our Google Group and ask for help.


Modifying The Source Code

If you plan on modifying the source code, we recommend installing Eclipse with the C/C++ development tools

On Ubuntu

sudo apt-get install eclipse eclipse-cdt

For other OSes, download the “Eclipse IDE for C/C++ Developers” from .

Then, rerun CMake to generate the proper project files and set you up to be able to debug:

cmake -DCMAKE_BUILD_TYPE=Debug -G"Eclipse CDT4 - Unix Makefiles" ../src/

If successful, you can now import the robogen project into any Eclipse workspace by selecting “File”->”Import”->”General”->”Existing projects into workspace”. Select robogen/build as the root directory and click “finish”.

You will now be able to compile the code from Eclipse or by simply typing in robogen/build:

make -j3


Windows Source Install


Install the following software:

Get the source code

Now you can either download the latest release from github, or clone the repository for the most bleeding edge code:

Clone from Git

Open git bash and cd into the directory where you want to clone the source code (note: use the “Insert” button to paste in git bash). Perform:

git clone

Download and unzip it into your Robogen folder.


Support for Scriptable Scenarios

If you would like to be able to use scriptable scenarios for writing custom fitness functions and scenario configurations without needing to modify the code, then you will additionally need Qt5, since this functionality relies on QtScript.  The easiest way to do this on windows is to download a pre-compiled version of Qt5.5.0 for VS2010 from the following link:!c4pDRYYS!AAoO8a1ywnLhoZvY0XL1kycgZPs9bH74VFRnZHbTh8s (if you are using a different version of Visual Studio, look at the other options provided here:

Once you have the appropriate Qt downloaded, you should simply uncomment line 7 of robogen/src/cmake/CustomPath.cmake and modify the path to point to the Qt5.5 instance you just downloaded.

If you do not do this, everything else will still work, but you will not be able to use scriptable scenarios.


In robogen/src/cmake/CustomPath.cmake, modify line 6 “set(UTILS_PATH “D:/robogen/utils”)” to point to the folder of the same name in the folder you just extracted.

Open CMAKE GUI, enter the ROBOGEN_HOME/src in “Where to find the source” and ROBOGEN_HOME/build in “Where to build the source”. Click on Configure and when done, on Generate to create a solution for Visual Studio. If you get some errors, it is very likely that the path in your ‘CustomPath.cmake’ is still defined incorrectly.

Then, from Visual Studio open the solution “RoboGen.sln” that can be found in ROBOGEN_HOME/build.

In robogen/build open RoboGen.sln. If you will be asked to choose the application – press OK. In the ‘Solution Explorer’ window right-click on the ‘ Solution ‘RoboGen’ (6 projects)’ and select ‘Rebuild Solution’. This will allow you to compile the whole solution file with 6 projects. If you want to compile a particular project, right-click on it and select ‘Project Only’ then ‘Rebuild Only YourProject’. The compilation of the whole solution might take a few minutes.

Locate the compiled executables – unlike in Mac or Linux, they should be in a folder robogen/build/Debug or robogen/build/Release, then copy the executables in the robogen/run directory  – it contains all the necessary dlls. Alternatively, you can Debug the program straight from Visual Studio:

Debugging straight from Visual Studio

You can configure Visual Studio to Debug with “run” as working directory. Right-click on the project you want to configure for this and select ‘Properties’. On the left side you will find a tree where properties of this project can be defined. Select ‘Configuration Properties’ then ‘Debugging’. On the right side modify the value of the field ‘Working Directory’ from ‘$(ProjectDir)’ to ‘$(ProjectDir), ./../../run’ (without quotes) now when you run your executable file, it will view the ‘run’ directory as its working directory and so it will be able to look at .dll and any other files located in this directory without specifying the path. Now you can also modify the field of ‘Command Arguments’ to set program arguments you want to use for the Debugging or testing of your changes. Run the current project with F5.

If you run into difficulties, with any of this, head on over to our Google Group and ask for help.