https://github.com/jrl-umi3218/eigen-qld
eigen-qld allow to use the QLD QP solver with the Eigen3 library.
https://github.com/jrl-umi3218/eigen-qld
Last synced: 2 days ago
JSON representation
eigen-qld allow to use the QLD QP solver with the Eigen3 library.
- Host: GitHub
- URL: https://github.com/jrl-umi3218/eigen-qld
- Owner: jrl-umi3218
- License: bsd-2-clause
- Created: 2015-08-11T19:46:25.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2025-11-11T13:09:23.000Z (6 days ago)
- Last Synced: 2025-11-11T15:08:16.247Z (6 days ago)
- Language: C
- Size: 1.38 MB
- Stars: 16
- Watchers: 4
- Forks: 12
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Authors: AUTHORS
Awesome Lists containing this project
- awesome-robotics-libraries - [github - umi3218/eigen-qld](https://img.shields.io/github/stars/jrl-umi3218/eigen-qld.svg?style=flat&label=Star&maxAge=86400)] ([Libraries](#awesome-robotics-libraries) / [Optimization](#awesome-robotics-libraries))
- awesome-robotics-libraries - [github - umi3218/eigen-qld](https://img.shields.io/github/stars/jrl-umi3218/eigen-qld.svg?style=flat&label=Star&maxAge=86400)] ([Libraries](#awesome-robotics-libraries) / [Optimization](#awesome-robotics-libraries))
README
# eigen-qld
[](https://opensource.org/licenses/BSD-2-Clause)
[](https://cloudsmith.com)
[](https://github.com/jrl-umi3218/eigen-qld/actions?query=workflow%3A%22CI+of+eigen-qld%22)
[](http://jrl-umi3218.github.io/eigen-qld/doxygen/HEAD/index.html)
eigen-qld provides an interface to use the [QLD QP solver](https://help.scilab.org/doc/5.5.2/en_US/qld.html) with the [Eigen3](https://eigen.tuxfamily.org) library.
Installing
------
## Ubuntu LTS (16.04, 18.04, 20.04, 22.04, 24.04)
You must first setup our package mirror:
```
curl -1sLf \
'https://dl.cloudsmith.io/public/mc-rtc/stable/setup.deb.sh' \
| sudo -E bash
```
You can also choose the head mirror which will have the latest version of this package:
```
curl -1sLf \
'https://dl.cloudsmith.io/public/mc-rtc/stable/setup.deb.sh' \
| sudo -E bash
```
You can then install the package:
```bash
sudo apt install libeigen-qld-dev python-eigen-qld python3-eigen-qld
```
## Conan
Install the latest version using [conan](https://conan.io/)
```bash
conan remote add multi-contact https://api.bintray.com/conan/gergondet/multi-contact
# Install the latest release
conan install eigen-qld/latest@multi-contact/stable
# Or install the latest development version
# conan install eigen-qld/latest@multi-contact/dev
```
## Manually build from source
### Dependencies
To compile you need the following tools:
* [Git]()
* [CMake](cmake.org) >= 2.8
* [pkg-config]()
* [doxygen]()
* [g++]()
* [gfortran]() (`-DUSE_F2C=OFF`)
* [gcc]() (`-DUSE_F2C=ON`)
* [Boost](http://www.boost.org/doc/libs/1_58_0/more/getting_started/unix-variants.html) >= 1.49
* [Eigen](http://eigen.tuxfamily.org/index.php?title=Main_Page) >= 3.2
For Python bindings:
* [Cython](cython.readthedocs.io) >= 0.20
* [Eigen3ToPython](https://github.com/jrl-umi3218/Eigen3ToPython) (to use the python binding)
### Building
```sh
git clone --recursive https://github.com/jrl-umi3218/eigen-qld
cd eigen-qld
mkdir _build
cd _build
cmake [options] ..
make && make intall
```
#### CMake options
By default, the build will use the `python` and `pip` command to install the bindings for the default system version (this behaviour can be used to build the bindings in a given virtualenv). The following options allow to control this behaviour:
* `PYTHON_BINDING` Build the python binding (ON/OFF, default: ON)
* `PYTHON_BINDING_FORCE_PYTHON2`: use `python2` and `pip2` instead of `python` and `pip`
* `PYTHON_BINDING_FORCE_PYTHON3`: use `python3` and `pip3` instead of `python` and `pip`
* `PYTHON_BINDING_BUILD_PYTHON2_AND_PYTHON2`: builds two sets of bindings one with `python2` and `pip2`, the other with `python3` and `pip3`
* `BUILD_TESTING` Enable unit tests building (ON/OFF, default: ON)
* `USE_F2C` Build with fortran source code translated in C (slower runtime) (ON/OFF, default: OFF).