1 安装信息准备
安装系统:Ubuntu 20.04
ROS版本:Noetic
参考网址:
Cartographer官方文档:Cartographer ROS Integration — Cartographer ROS documentation
What Is My IP Address:What Is My IP Address? Free IP Lookup (用于查询 IP 地址)
Fishros一键即刻解君愁:小鱼的一键安装系列
2 安装
2.1 安装铺垫
1 自行安装 sphinx
存在 Sphinx、 Protobuf 等的版本冲突问题,在执行 catkin_make_isolated --install --use-ninja 进行编译时会报错,版本不一致。经实际操作检验提前安装 Sphinx 可以避免报错并完成安装。代码实现:
注:此处笔者安装为 sphinx-6.1.3
# 安装 pip 相关包,执行 pip 安装,笔者使用的 python3
sudo apt-get install python3-pip
# 安装 sphinx 及其相关包并检查
# 执行该语句时会一并安装相关包及其依赖
pip3 install sphinx
pip3 list
2 配置 raw.githubusercontent.com IP地址
报错:无法连接至服务器,网络异常,域名异常,具体原因待查证:
解决:
在 What Is My IP Address? Free IP Lookup 查询 raw.githubusercontent.com IP地址如下:185.199.110.133 效果较好,并执行如下代码:
# 配置 raw.githubusercontent.com IP地址
sudo sh -c "echo 185.199.110.133 raw.githubusercontent.com >> /etc/hosts"
参考链接:echo 写入文件
2.2 官方安装
按照官方提示进行安装:ROS(Noetic) Cartographer 官方安装指南
报错提示
若执行无报错,正常安装即可
报错 1
在执行指令
sudo rosdep init rosdep update rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y
极大概率出现报错提示,大意为:网络错误
此处笔者使用了不建议应用的二班方法,故无报错,下面给出一般解决方法(此处感谢fishros (鱼香ROS) (github.com) ):
参照小鱼,安装 rosdepc :
wget http://fishros.com/install -O fishros && . fishros
更换上述执行代码,即可正常安装:
sudo rosdepc init
rosdepc update
rosdepc install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y
报错 2
在执行指令 rosdep install --from-paths src --ignore-src --rosdistro=${ROS_DISTRO} -y 给出如下报错:
分析:Ubuntu 20.04 系统不支持包 libabsl-dev
修正:在文件 ws_carto/src/cartographer/package.xml 下修改,注释掉 <depend>libabsl-dev</depend> 并重新执行指令。
安装
按照官方文档以及以上参考文件后,及可成功完成安装。
2.3 安装检验
依照 官方文档-rosbag下载 获取 rosbag,运行验证安装成功与否。