Robotics Library

Install RL on Mac OS

For Mac OS, we maintain a Homebrew Tap on GitHub. It contains the currently released version of the Robotics Library and, most importantly, all dependencies necessary for that version. The main advantages of the Tap are that the installation of RL cleanly works together with the Homebrew package manager, resolves all dependencies and provides automatic updates.

Robotics Library Tap in Cakebrew
The Robotics Library and its dependencies can be installed and updated with Homebrew.

Please note that Mac OS support of the Robotics Library is in an experimental stage. The following tutorial has only been tested for High Sierra and may need to be adapted for other setups.


In order to compile the dependencies of RL, this tutorial uses the Homebrew project. First, install the Xcode Command Line Tools (CLT) and Homebrew as described on the Homebrew website.

xcode-select --install
/usr/bin/ruby -e "$(curl -fsSL"

Add the RL Homebrew repository with the following command.

brew tap roboticslibrary/rl

You can then install RL's runtime files, some demo applications and example models with the following terminal command.

brew install rl

Trying out RL

The demo applications can be run via one of the following terminal commands.

The first demo uses the scene graph component to visualize a simple scene with a Unimation Puma 560 robot manipulator.

/usr/local/bin/rlViewDemo /usr/local/share/rl-0.7.0/examples/rlsg/unimation-puma560_boxes.xml

You can then try a collision detection and distance computation demo with a basic scene consisting of two boxes.

/usr/local/bin/rlCollisionDemo /usr/local/share/rl-0.7.0/examples/rlsg/scene.xml

The next two applications combine kinematics and visualization for the control of a Unimation Puma 560 robot manipulator.

/usr/local/bin/rlCoachKin /usr/local/share/rl-0.7.0/examples/rlsg/unimation-puma560_boxes.xml /usr/local/share/rl-0.7.0/examples/rlkin/unimation-puma560.xml
/usr/local/bin/rlCoachMdl /usr/local/share/rl-0.7.0/examples/rlsg/unimation-puma560_boxes.xml /usr/local/share/rl-0.7.0/examples/rlmdl/unimation-puma560.xml

Finally, you can use the path planning demo application to find collision free motions for the Unimation Puma 560 using the Rapidly-Exploring Random Trees (RRT) algorithm.

/usr/local/bin/rlPlanDemo /usr/local/share/rl-0.7.0/examples/rlplan/unimation-puma560_boxes_rrtConCon.xml