参考教程: https://blog.csdn.net/SimileciWH/article/details/82939752
1.安装依赖
sudo apt-get update
sudo apt-get install -y python-wstool python-rosdep ninja-build
sudo apt-get install cmake
sudo apt-get install build-essential
sudo apt-get install libgoogle-glog-dev
sudo apt-get install libatlas-base-dev
安装Eigen3
sudo apt-get install libeigen3-dev
#构建ceres作为一个静态的库
sudo apt-get install libsuitesparse-dev
安装lua5.2
sudo apt install lua5.2
下载安装包
在这里我提供了, 谷歌官方推荐安装包(cartographer.git’, version: ‘1.0.0’, cartographer_ros.git’, version: ‘1.0.0’, ceres-solver.git’, version: ‘1.13.0’, protobuf3)蓝奏云下载地址: https://fei0917.lanzoui.com/i0EZkep06vg
接下来:
mkdir cartographer_ws
cd cartographer_ws
cartographer安装文件
cd ceres-solver-1.3
mkdir build
cd build
cmake ..
make -j 8
#make test # 此选项可选
sudo make install
Install proto3. 直接将下载好的protobuf放在cartographer/scripts/目录下就行
cd protobuf #这一步根据你的当前位置 切换到xxxx/scrips/protobuf即可(另外,网盘解压后,名字protobuf-master 去掉master即可)
mkdir build
cd build
cmake -G Ninja \
-DCMAKE_POSITION_INDEPENDENT_CODE=ON \
-DCMAKE_BUILD_TYPE=Release \
-Dprotobuf_BUILD_TESTS=OFF \
../cmake
ninja
sudo ninja install
2.最后,进入你的cartographer工作空间
cd cartographer_ws
rosdep update
rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y
#Build and install.这一步会花费很长的时间,耐心等待
catkin_make_isolated --install --use-ninja
source install_isolated/setup.bash
若上面rosdep update执行失败,可以删除已存在的/etc/ros/rosdep/sources.list.d/20-default.list,重新
sudo rosdep init && rosdep update
若报错error: 找不到/usr/lib/x86_64-linux-gnu/libGL.so 库;
解决方法:通过ln -s链接相应的文件
先locate libGL
然后在选择相应的文件链接(我是试出来的):sudo ln -s /usr/lib/x86_64-linux-gnu/libGL.so.1 /usr/lib/x86_64-linux-gnu/libGL.so
其中:ln -s 源文件 目标文件
如果出现:ln: 无法创建符号链接"/usr/lib/x86_64-linux-gnu/libGL.so": 文件已存在
先移除:sudo rm /usr/lib/x86_64-linux-gnu/libGL.so, 再链接。移除前先备份:sudo nautilus(执行管理员权限)
参考链接:https://blog.csdn.net/liumingchun13/article/details/76686150/
3.测试结果
2D建图测试
2d数据可以去google官网下载:https://storage.googleapis.com/cartographer-public-data/bags/backpack_2d/cartographer_paper_deutsches_museum.bag
(时间可能有点长,也可以去其他教程上下载这个数据包。)
roslaunch cartographer_ros demo_backpack_2d.launch bag_filename:=${HOME}/Downloads/cartographer_paper_deutsches_museum.bag
参考链接:https://blog.csdn.net/qq_42116038/article/details/111204879
2d 激光Slam测试结果
3d激光slam测试结果