Cartographer+melodic安装笔记——成功(含protobuf版本冲突解决方案)

【参考链接】
链接1:

https://blog.csdn.net/qq_42116038/article/details/111204879?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.control

链接2:

https://blog.csdn.net/weixin_45140945/article/details/111063528

【安装依赖】

sudo apt update
sudo apt install -y python-wstool python-rosdep ninja-build

【建立工作空间】

$ mkdir -p ~/cartographer_ws/src
$ cd cartographer_ws
$ wstool init src

【下载安装.sh文件】
https://ghproxy.com/使用代理访问

$ wstool merge -t src **https://ghproxy.com**/https://raw.githubusercontent.com/googlecartographer/cartographer_ros/master/cartographer_ros.rosinstall
$ wstool update -t src

【下载安装ceres-solver-1.13.0】

$ cd ~/cartographer_ws/src
获取源码:$ wget ceres-solver.org/ceres-solver-1.13.0.tar.gz
$ tar xvf ceres-solver-1.13.0.tar.gz
$ cd ceres-solver-1.13.0
$ mkdir build
$ cd build
$ cmake …
$ make
安装:$sudo make install

【安装proto3】
在工作空间目录下

版本3.4.1
src/cartographer/scripts/install_proto3.sh
rosdep update
rosdep install --from-paths src --ignore-src --rosdistro=melodic -y

【安装依赖abseil】
在home目录下

sudo apt-get install stow
cd /cartographer_ws/src/carographer/scripts
./install_abseil.sh

注:下载较慢,打开install_abseil.sh,将git clone http://github.com/abseil/abseil-cpp.git改成git clone git://github.com/abseil/abseil-cpp.git
【编译】
在工作空间目录下

catkin_make_isolated --install --use-ninja

【添加环境变量】

echo source ~/cartographer_ws/devel_isolated/setup.bash >> ~/.bashrc
source ~/.bashrc

【下载官网数据demo—2d数据】

wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/backpack_2d/cartographer_paper_deutsches_museum.bag

【运行demo】

roslaunch cartographer_ros demo_backpack_2d.launch bag_filename:=${HOME}/Downloads/cartographer_paper_deutsches_museum.bag

{安装过程错误}
本人按照以上方案安装好之后,运行测试demo时进程中断。查找原因发现是电脑安装了两个版本的protobuf,在编译cartographer时用protobuf3.4.1编译的,运行demo时却调用protobuf3.5.1(之前电脑安装过该版本)。
卸载版本3.5.1:

sudo rm /usr/bin/protoc  //执行文件
sudo rm -rf /usr/include/google //头文件
sudo rm -rf /usr/lib/libproto* //库文件

注:以上路径自己通过 which protoc 查找,有些是在/usr/local/目录下。

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值