在网上已经有了一些关于ubuntu编译MIT Cheetah-Software的文章,如:Ubuntu 18.10编译MIT开源Cheetah-Software - 知乎,针对编译过程中遇到的问题,本文对网上的文章做了整理,内容如下:
一、通过apt安装以下依赖项
mesa-common-dev
freeglut3-dev
coinor-libipopt-dev
libblas-dev
liblapack-dev
gfortran
cmake
gcc
g++
build-essential
libglib2.0-dev
git
二、源码安装依赖项lcm库
1、通过git工具下载lcm开源项目
git clone https://github.com/lcm-proj/lcm.git
2、使用apt安装lcm需要的依赖项
(1)必须项
build-essential
libglib2.0-dev
cmake
(2)可选项
default-jdk
python-all-dev
liblua5.1-dev
golang
doxygen
python-epydoc
(3)编译与安装
cd lcm
mkdir build
cd build
cmake ..
make -j4
sudo make install
三、安装Qt5.14.0及libqt5gamepad库
1、下载Qt5.14
wget -P ~/Downloads https://mirrors.tuna.tsinghua.edu.cn/qt/archive/qt/5.14/5.14.0/qt-opensource-linux-x64-5.14.0.run
2、安装Qt5.14
chmod +x qt-opensource-linux-x64-5.14.0.run
sudo ./qt-opensource-linux-x64-5.14.0.run
3、配置Qt5.14环境变量
(1)打开/etc/profile文件
sudo gedit /etc/profile
(2)在编辑器尾部添加
export PATH="/opt/Qt5.14.0/Tools/QtCreator/bin:$PATH"
export PATH="/opt/Qt5.14.0/5.14.0/gcc_64/bin:$PATH"
export LD_LIBRARY_PATH="/opt/Qt5.14.0/5.14.0/gcc_64/lib:$LD_LIBRARY_PATH"
export QT_PLUGIN_PATH="/opt/Qt5.14.0/5.14.0/gcc_64/plugins:$QT_PLUGIN_PATH"
export QML2_IMPORT_PATH="/opt/Qt5.14.0/5.14.0/gcc_64/qml:$QML2_IMPORT_PATH"
(3)使环境变量生效
source /etc/profile
四、安装libeigen3-dev
sudo apt install libeigen3-dev
注意:安装完成后,libeigen3的目录是’/usr/include/eigen3’,而Cheetah使用的是”/usr/local/include/eigen3”
sudo ln -s /usr/include/eigen3 /usr/local/include/eigen3
五、下载和编译Cheetah-Software源码
1、下载源码
git clone https://github.com/mit-biomimetics/Cheetah-Software.git
2、修改common/CMakeLists.txt
gedit common/CMakeLists.txt
将30行的”master”修改为”main”
3、编译源码
cd Cheetah-Software
mkdir build
cd build
cmake ..
./../scripts/make_types.sh
make -j4
4、测试
(1)通信测试
./common/test-common
(2)开启仿真器,如图1所示
./sim/sim
(3)选择Mini Cheetah和Simulator单选,点击开始,弹出图2所示
(4)修改Robot Control Parameters,见图3所示
修改cheater_mode为1
修改control_mode为1
修改user_rc为0
(5)连接控制器
在新终端中运行如下代码,运行效果如图4所示
./user/MIT_Controller/mit_ctrl m s
图1 ./sim/sim 仿真控制面板主界面
图2 仿真主界面-未启动的界面
图3 启动Mini Cheetah的参数设置
图4 运行mit_ctrl m s的效果
六、注意事项
在运行程序时,出现动态库链接失败时,需在终端输入如下命令
sudo gedit /etc/ld.so.conf
在末尾添加如下内容
/usr/local/lib
保存后,输入命令
sudo ldconfig