Skip to content
Snippets Groups Projects
README.md 1.53 KiB
Newer Older
Nicolas Mansard's avatar
Nicolas Mansard committed
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:

```bash
git clone --recursive <git_url>
```

Nicolas Mansard's avatar
Nicolas Mansard committed
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`.
Nicolas Mansard's avatar
Nicolas Mansard committed

### 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