All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Building and Installing on Linux

Download the sources from sourceforge.

git clone --branch latest_stable

OpenRAVE works only with qt4! Before compiling SoQt or OpenRAVE make sure to remove any qt3 related dev packages like qt3-dev-tools or libqt3-headers.

If there are compilation errors with templates, might have to use gcc version 4.1 or greater. You can check your version of gcc by gcc –version

Installing Dependencies from Package Manager

This is for the dependencies to OpenRAVE, make sure to run them regardless of the OpenRAVE version being installed from sources.

Ubuntu 10.04 or later

sudo add-apt-repository ppa:openrave/release
sudo sh -c 'echo "deb-src `lsb_release -cs` main" >> /etc/apt/sources.list.d/openrave-release-`lsb_release -cs`.list'
sudo apt-get update
sudo apt-get build-dep openrave

Ubuntu 8.04 or earlier

Can run the following script inside openrave sources:

sudo apt-get install g++ libqt4-dev qt4-dev-tools ffmpeg libavcodec-dev libavformat-dev libxvidcore-dev libx264-dev libfaac-dev libogg-dev libvorbis-dev libdc1394-dev liblame-dev libgsm1-dev libboost-dev libboost-regex-dev libxml2-dev libglew-dev  libboost-graph-dev libboost-wave-dev libboost-serialization-dev libboost-filesystem-dev libpcre3-dev libboost-thread-dev libmpfr-dev libboost-date-time-dev libqhull-dev libswscale-dev lapack3-dev
sudo apt-get remove cmake qt3-dev-tools libqt3-headers libode0debian1 python-sympy

# cmake - need to use version >=2.6.0, default cmake in ubuntu 8.04 is 2.47, which will not work.
cd cmake-2.8.7
sudo make install

# ode - Will need to install ODE from sources (do not use the one in the package manager)
tar xjf ode-0.11.1.tar.bz2
cd ode-0.11.1
./configure --with-libccd=cyl-cyl --with-trimesh=opcode --enable-new-trimesh --disable-demos --enable-shared --with-arch=nocona --enable-release --enable-malloc --enable-ou --disable-asserts --with-pic --enable-double-precision
make -j4
sudo make install

# soqt
tar xzf SoQt-1.5.0.tar.gz
cd SoQt-1.5.0
sudo make install

Fedora Core Users

Might need to add the livna yum repository for ffmpeg. To install the necessary packages type

sudo yum install qt4-devel Coin2-devel glew-devel gsm-devel x264 x264-devel ffmpeg-devel libdc1394-devel libtheora-devel libmp4v2-devel ode-devel boost-devel cmake

Be careful if installing soqt-devel from the package manager, it may be compiled with the wrong version of Qt. If compiling SoQt from sources, check QTDIR and make sure it points to the correct version.

Necessary libraries for Old Linux Distros

(Only install these libraries from sources if not in package manager.

Collision Checkers and Physics Simulators

Although OpenRAVE is not tied to any particular collision checker, it requires at least one is installed to get basic functions. Here are the following libraries that have OpenRAVE plugins:


In order to use the python bindings through the openravepy module, you'll need to install python, boost python, python numpy, and python sympy.

sudo apt-get install libboost-python-dev python python-dev python-numpy ipython


sudo apt-get install python-scipy

Make sure to set the Python path correctly in the ~/.bashrc file with:

export PYTHONPATH=$PYTHONPATH:`openrave-config --python-dir`


Both Octave and Matlab are supported and the OpenRAVE build system automatically detects and compiles the mex files for each.

Octave users:

Matlab users:

Building OpenRAVE

After all necessary libraries have been installed, it is time to finally build and install OpenRAVE. In the root openrave folder type


This will compile all files. To install all the files type

make install

Because multiple openrave versions can co-exist in a system, to install all files except symlinks so that previous installations are not clobbered, do:

make altinstall

To choose a different install directory, type

make prefix=/my/new/dir

In case libraries are added after the initial install of OpenRAVE, remove the cmake cached files using:

rm build/CMakeCache.txt

If the cached files are not removed, the new system settings will not be noticed.

Bash Shell

Can enable automatic completion of several openrave programs like by sourcing the openravebash file. Add this to your ~./.bashrc file:

source `openrave-config --share-dir`/openravebash