Loading...
Searching...
No Matches
Installation

Ubuntu

Simply type:
apt-get install libompl-dev ompl-demos
Note that this package does not include Python bindings at this time.
Debian packages for OMPL are also found in ROS distributions. Note that these packages do not include Python bindings. To install the ROS version of OMPL you need to add the ROS repository to your list of sources (you have probably have done this already if you are using ROS):
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu `lsb_release -sc` main" > /etc/apt/sources.list.d/ros-latest.list'
wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
and install OMPL:
sudo apt-get update
sudo apt-get install ros-`rosversion -d`-ompl
Please see MoveIt for further information.

Fedora

Simply type:
sudo yum install ompl
Note that this package does not include Python bindings at this time.

Linux (generic)

OMPL requires Boost (version 1.68 or higher), CMake (version 3.12 or higher), Eigen (version 3.3 or higher), and yaml-cpp (for parsing YAML configuration files, required for VAMP demos). To be able to generate python bindings you need to install the Python library and header files. Finally, you need a C++17 compiler (g++-7 or newer).

Note: OMPL includes VAMP (Vector-Accelerated Motion Planning) by default, which requires git for submodule initialization.

Once the dependencies are installed, OMPL can then be compiled like so:

  • Create a build directory and run cmake:
    cd ompl
    mkdir -p build/Release
    cd build/Release
    cmake ../..
  • Compile OMPL by typing make -j .
  • Optionally, run the test programs by typing make test.
  • Optionally, generate the documentation (i.e., a local copy of this web site) by typing make ompl_doc (requires Doxygen and Graphviz to be installed).

The build system includes a number of options that you can enable or disable.

macOS

Install MacPorts and type:
sudo port sync \; install ompl
If you want to build OMPL from source, you can install just the OMPL dependencies like so:
sudo port install `port -q info --depends ompl | sed 's/,//g'`

Note: OMPL includes VAMP (Vector-Accelerated Motion Planning) by default, which requires git for submodule initialization.

Once the dependencies are installed, OMPL can then be compiled like so:

  • Create a build directory and run cmake:
    cd ompl
    mkdir -p build/Release
    cd build/Release
    cmake ../..
  • Compile OMPL by typing make -j 4.
Install Homebrew and type:
brew install ompl
Note that the Homebrew formula does not include Python bindings at this time.

Note: OMPL includes VAMP (Vector-Accelerated Motion Planning) by default, which requires git for submodule initialization.

When building from source, initialize git submodules for VAMP:

git submodule update --init --recursive

MS Windows

It is recommended to use vcpkg, a Microsoft-supported package manager for open source software. Once you have vcpkg installed, you can install OMPL like so:
vcpkg install ompl
Note that the vcpkg installation does not include Python bindings.

If you want to build OMPL from source on Windows:

Note: OMPL includes VAMP (Vector-Accelerated Motion Planning) by default, which requires git for submodule initialization.

  • Follow the standard CMake build process with your preferred compiler (Visual Studio, MinGW, etc.)

CMake Fetchcontent

If you want to build ompl from source as part of another repository, FetchContent is one approach. In CMake, you can fetch and link like so:
include(FetchContent)
FetchContent_Declare(
  ompl
  GIT_REPOSITORY https://github.com/ompl/ompl.git
  GIT_SUBMODULES_RECURSE ON  # Required for VAMP integration
)
FetchContent_MakeAvailable(ompl)

add_executable(main main.cpp)
target_link_libraries(main PRIVATE ompl::ompl)
    

Note: The GIT_SUBMODULES_RECURSE ON option ensures that VAMP submodules are automatically initialized.

Python

There are pre-built OMPL modules for several Python versions. They are available for Linux and macOS. You can install the OMPL Python module with, e.g., `pip`:
pip install ompl