@@ -15,72 +15,28 @@ The **Simple-mpc** library provides:
1515## Installation
1616
1717### Build from source (devel)
18+ 0 . Install Pixi (from prefix.dev) : see https://pixi.sh/latest/installation/
1819
19201 . Clone repo.
2021``` bash
21- mkdir -p simple-mpc_ws/src
22- cd simple-mpc_ws/src
2322git clone
[email protected] :Simple-Robotics/simple-mpc.git --recursive
23+ cd simple-mpc
2424```
2525
26- 2 . Create conda environment.
27- (It is recommended to use ` mamba ` instead of ` conda ` for faster/better dependencies solving)
26+ 2 . Build
2827``` bash
29- mamba env create -f simple-mpc/environment-devel.yaml
30- mamba activate simple-mpc-devel
31- ```
32-
33- 3 . Clone some dependencies
34- (Some dependencies are not available on conda, or not with adequate versions)
35- (vcs allow for cloning and managing multiple repo at once)
36- ``` bash
37- vcs import --recursive < simple-mpc/devel-git-deps.yaml
38- ```
39-
40- 4 . Build all dependencies of simple-mpc:
41- (Due to a renaming issue, you may need to rename hpp-fcl into coal in the package.xml file of the Pinocchio library)
42- ``` bash
43- export MAKEFLAGS=" -j4" # It is recommended to reduce the number of jobs as you ram might get full easily with the default number.
44- cd ..
45- colcon build --event-handlers console_direct+ --packages-ignore simple-mpc --cmake-args \
46- -DCMAKE_BUILD_TYPE=Release \
47- -DCMAKE_PREFIX_PATH=$CONDA_PREFIX \
48- -DPYTHON_EXECUTABLE=$( which python) \
49- -DCMAKE_CXX_COMPILER_LAUNCHER=' ccache' \
50- -DBUILD_TESTING=OFF \
51- -DBUILD_DOCUMENTATION=OFF \
52- -DBUILD_EXAMPLES=OFF \
53- -DBUILD_BENCHMARK=OFF \
54- -DBUILD_BENCHMARKS=OFF \
55- -DBUILD_WITH_COLLISION_SUPPORT=ON \
56- -DGENERATE_PYTHON_STUBS=OFF \
57- -DCOAL_BACKWARD_COMPATIBILITY_WITH_HPP_FCL=ON
58- ```
59-
60- 5 . Source the environment and install simple-mpc:
61- ``` bash
62- source install/setup.bash
63- colcon build --packages-select simple-mpc
64- ```
65-
66- 6 . Source the environment one more time
67- (This step needs to be repeated every time a new shell is opened. It can be put in your ~ /.bashrc)
68- ``` bash
69- mamba activate simple-mpc-devel # If not already done
70- source install/setup.bash
28+ pixi run build
7129```
7230
7331#### Dependencies
7432
75- * [ proxsuite] ( https://github.com/Simple-Robotics/proxsuite.git )
76- * [ Eigen3] ( https://eigen.tuxfamily.org ) >= 3.3.7
77- * [ Boost] ( https://www.boost.org ) >= 1.71.0
78- * OpenMP
79- * [ hpp-fcl] ( https://github.com/humanoid-path-planner/hpp-fcl )
33+ * [ Aligator] ( https://github.com/edantec/aligator ) | [ conda] ( https://anaconda.org/conda-forge/aligator )
34+ * [ proxsuite] ( https://github.com/Simple-Robotics/proxsuite.git ) | [ conda] ( https://anaconda.org/conda-forge/proxsuite )
8035* [ Pinocchio] ( https://github.com/stack-of-tasks/pinocchio ) | [ conda] ( https://anaconda.org/conda-forge/pinocchio )
81- * [ Aligator ] ( https://github.com/edantec/aligator ) temporary_fix branch
82- * [ example-robot-data ] ( https://github.com/Gepetto/example-robot-data )
36+ * [ hpp-fcl (renamed coal) ] ( https://github.com/humanoid-path-planner/hpp-fcl ) | [ conda ] ( https://anaconda.org/conda-forge/coal )
37+ * [ tsid ] ( https://github.com/stack-of-tasks/tsid ) >= 1.9.0 | [ conda ] ( https://anaconda.org/conda-forge/tsid )
8338* [ ndcurves] ( https://github.com/loco-3d/ndcurves )
84- * [ tsid] ( https://github.com/stack-of-tasks/tsid )
85- * (optional) [ eigenpy] ( https://github.com/stack-of-tasks/eigenpy ) >=3.9.0 (Python bindings)
86- * (optional) [ bullet] ( https://github.com/bulletphysics/bullet3 ) (Simulation examples)
39+ * [ Eigen3] ( https://eigen.tuxfamily.org ) >= 3.3.7
40+ * [ eigenpy] ( https://github.com/stack-of-tasks/eigenpy ) >=3.9.0 (Python bindings)
41+ * (optional) [ example-robot-data] ( https://github.com/Gepetto/example-robot-data ) (for tests, benchmarks and examples | [ conda] ( https://anaconda.org/conda-forge/example-robot-data )
42+ * (optional) [ pybullet] ( https://github.com/bulletphysics/bullet3 ) (Simulation examples) | [ conda] ( https://anaconda.org/conda-forge/pybullet )
0 commit comments