1.安装依赖
ROS相关的依赖有三个:
sudo apt-get install -y ros-melodic-navigation
sudo apt-get install -y ros-melodic-robot-localization
sudo apt-get install -y ros-melodic-robot-state-publisher
2.因为LIO-SAM里面需要用到因子图优化,其采用的是因子图优化库gtsam。此处安装gtsam:
wget -O ~/Downloads/gtsam.zip https://ghproxy.com/https://github.com/borglab/gtsam/archive/4.0.2.zip
cd ~/Downloads/ && unzip gtsam.zip -d ~/Downloads/
cd ~/Downloads/gtsam-4.0.2/
mkdir build && cd build
cmake -DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF ..
sudo make install -j8
//有些电脑运算不高,使用这句代码sudo make install -j4
3.安装LIO-SAM
3.1 创建一个新的工作空间Lio_sam的步骤为:
makdir -p ~/Lio_sam/src
cd ~/Lio_sam
catkin_make
3.2下载算法
cd ~/Lio_sam_ws/src
git clone https://ghproxy.com/https://github.com/TixiaoShan/LIO-SAM.git
cd ..
catkin_make
至此,应该成功
4.运行roslaunch lio_sam run.launch 报错
实际问题是库文件libmetis.so 的位置。它是一个运行时库,但是当应用程序查找它时,它的位置不在预期的目录中。在通过运行命令sudo make install -j8安装库gtsam 时,文件libmetis.so安装在/usr/local/lib/的默认位置,但是当我们启动 ros 工作区时,运行时库查看位置/opt/ros/melodic/库/
解决办法:
cd /usr/local/lib/
sudo cp libmetis.so /opt/ros/melodic/lib/
再次运行,一切正常。