pinocchio 安装与使用
1. ubuntu20.04 安装 pinocchio
所需依赖
- boost
- egien
1) boost 安装
1.网页获取boost安装包
wget http://sourceforge.net/projects/boost/files/boost/1.77.0/boost_1_77_0.tar.gz
2.解压boost安装包
tar -xzvf boost_1_77_0.tar.gz
3.进入解压目录
cd boost_1_77_0
4.编译安装包
sudo ./bootstrap.sh
5.生成动态链接库
sudo ./b2 install (一定要加sudo)
boost库被安装在/user/local/lib下面
2) egien 安装
sudo apt update
sudo apt install libeigen3-dev
3) pinocchio 安装—源码安装
1)克隆git仓库
这里并不推荐在github上直接下载zip,因为这样所下载的文件中,cmake文件夹的内容会被忽略,无法编译,推荐git clone:
git clone --recursive https://github.com/stack-of-tasks/pinocchio
2)转换git分支
此步的前提是克隆Pinocchio库的目录已经处于git所创建的版本控制仓库中
git checkout master
3)编译源文件
- 进入pinocchio文件夹,创建build文件夹以放置编译文件,并进入
cd pinocchio && mkdir build && cd build
注意:因为我们需要的是C++库,所以不需要同时生成Python版本的编译文件所以在Cmake前,要修改Pinocchio中的CmakeLists.txt文件来关闭这个选项,将下面的BUILD_PYTHON_INTERFACE的ON改为OFF即可。
楼主一开始没有关闭BUILD_PYTHON_INTERFACE,会在编译时在里面pytho文件下面报错。
# --- OPTIONS ----------------------------------------
OPTION(BUILD_BENCHMARK "Build the benchmarks" OFF)
OPTION(BUILD_UTILS "Build the utils" OFF)
OPTION(BUILD_PYTHON_INTERFACE "Build the Python bindings" ON)
OPTION(BUILD_WITH_COMMIT_VERSION "Build libraries by setting specific commit version" OFF)
- Cmake
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local
- make
make -j4
楼主到这里就编译通过了
在make的过程中,可能会出现部分的boost头文件搜索不到的情况,如下:
/.../.../.../.../.../.../Pinocchio/pinocchio/unittest/energy.cpp:14:58: fatal error: boost/test/tools/floating_point_comparison.hpp: 没有那个文件或目录
直接进入源程序中查找问题代码,搜索头文件的实际位置,并修改正确即可
- 最后,install
sudo make install
- 配置环境
- 进入.bashrc文件
sudo gedit ~/.bashrc
- 添加下面内容
注:官网的“PKG_CONFIG_PATH=”的“=”号前有空格,需要删掉
export PATH=/usr/local/bin:$PATH
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
export PYTHONPATH=/usr/local/lib/python2.7/site-packages:$PYTHONPATH
export CMAKE_PREFIX_PATH=/usr/local:$CMAKE_PREFIX_PATH
最后 source即可
source ~/.bashrc