Skip to content
Snippets Groups Projects
user avatar
Justin Carpentier authored
[CMake] Synchronize module
f567b496
History

eigenpy

Setup

Before compiling this package, make sure to have initialized all git submodules of this repo. To initialize the submodules when cloning the repo, use:

git clone --recursive <git_url>

To compile this package, it is recommended to create a separate build directory:

mkdir _build
cd _build
cmake [OPTIONS] ..
make install

Please note that CMake produces a CMakeCache.txt file which should be deleted to reconfigure a package from scratch.

Compiling for python3 on macOS

Make sure you have boost for python3 installed. If you use homebrew, you can install it via brew install boost-python3.

Assuming you have python2 and python3 installed on your system, you can compile for python3 using

cmake -DPYTHON_EXECUTABLE=`which python3`  ..

In case you get an error as only the libraries for python2 are found, make sure macOS can find the python3 libraries. One way to ensure this is by adding a symbolic link to the python3 libraries like

ln -s /usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/libpython3.7.dylib /usr/loca/lib/libpython3.7.dylib

where the abolve file source path was determined by looking at the output of brew ls --verbose python3 | grep libpython3.

Dependencies

The matrix abstract layer depends on several packages which have to be available on your machine.

  • Libraries:
    • eigen3
  • System tools:
    • CMake (>=2.6)
    • pkg-config
    • usual compilation tools (GCC/G++, make, etc.)
  • Python 2.7
  • Boost python