参考文章
cartographer安装教程(超详细,保姆级教程)
Ubuntu18.04 安装cartographer

20.04虚拟机,Noetic

P.S. 挺简单的,断断续续没用脑子装的,这两天好困

文章目录

  • ​1. 安装依赖
  • 2、安装protobuf3
    • (1)安装之前先卸载卸载ros自带proto2
    • (2)安装protobuf3.6.0
  • 2. 安装cartographer
    • (1)创建工作空间并克隆相应的三个包
    • (3)编译cartographer
    • (4)编译安装
    • (5)测试
  • 总结

​1. 安装依赖

安装的时候总报错:

The following packages have unmet dependencies:python-sphinx : Depends: python-docutils (>= 0.11) but it is not going to be installedDepends: python-pygments (>= 2.0) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

解决办法:
python-sphinx 换成 python3-sphinx, 即安装依赖如下:

sudo apt-get install -y     cmake     g++     git     google-mock     libboost-all-dev     libcairo2-dev     libeigen3-dev     libgflags-dev     libgoogle-glog-dev     liblua5.2-dev     libsuitesparse-dev     libwebp-dev     ninja-build     protobuf-compiler     python3-sphinx

2、安装protobuf3

(1)安装之前先卸载卸载ros自带proto2

sudo apt-get remove libprotobuf-dev
which protoc

(2)安装protobuf3.6.0

//安装依赖库
sudo apt-get install autoconf automake libtool curl make g++ unzip//克隆源码
git clone -b v3.6.0 https://github.com/protocolbuffers/protobuf.git// 克隆protobuf的子模块,主要是gtest(科学上网)
cd protobuf
git submodule update --init --recursive//编译
./autogen.sh
./configure
make //编译好久,回去睡觉了
make check


还挺好看的,继续。

sudo make install
sudo ldconfig
protoc --version// 输出protobuf版本信息
which protoc//查看安装位置


成功了
carto的搜索protoc的路径为/ usr/bin/protoc,选择直接copy过去

sudo cp /usr/local/bin/protoc /usr/bin
//carto的搜索protoc的路径为/usr/bin/protoc,选择直接copy过去
//注意这里面空格也要跟着

2. 安装cartographer

(1)创建工作空间并克隆相应的三个包

mkdir carto_ws
cd carto_ws
mkdir src
cd src
git clone https://github.com/googlecartographer/cartographer_ros.git
git clone https://github.com/googlecartographer/cartographer.git
git clone https://github.com/ceres-solver/ceres-solver.git

(2)构建ceres

cd ceres-solver
mkdir ceres-bin
cd ceres-bin
cmake ..
make
make test

sudo make install

(3)编译cartographer

cd carto_ws
rosdep update//科学上网
rosdep install --from-paths ~/catkin_ws/src --ignore-src -r

cd src
cd cartographer
mkdir build
cd build
cmake .. -G Ninja

出错

Could not find a package configuration file provided by "absl" with any of
the following names:abslConfig.cmake
absl-config.cmake

解决方法:

sudo apt-get install stow
sudo chmod +x ~/工作空间名/src/cartographer/scripts/install_abseil.sh
cd ~/工作空间名/src/cartographer/scripts
./install_abseil.sh

又出错:

/cartographer/cartographer/mapping/internal/3d/scan_matching/ceres_scan_matcher_3d.cc:105:42: note: suggested alternative: ‘QuaternionToRotation’absl::make_unique<ceres::QuaternionParameterization>()),^~~~~~~~~~~~~~~~~~~~~~~~~~
```cpp
和这样
cartographer/cartographer/mapping/internal/3d/scan_matching/ceres_scan_matcher_3d.cc:105:70: error: template argument 1 is invalidabsl::make_unique<ceres::QuaternionParameterization>()),

后来搜一下是cere-solver版本问题,原来版本1.0,换成version1.4.1就好了。
这个在网上就正常的下载然后解压。
然后

ninja//需要很长时间

就好啦

继续

ninja test
sudo ninja install



继续

(4)编译安装

cd carto_ws
catkin_make_isolated --install --use-ninja//需要很长时间
source install_isolated/setup.bash

(5)测试

2D

  wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/backpack_2d/cartographer_paper_deutsches_museum.bagroslaunch cartographer_ros demo_backpack_2d.launch bag_filename:=${HOME}/Downloads/cartographer_paper_deutsches_museum.bag


3D(暂时还没需求用3D,算了吧不等了)

  wget -P ~/Downloads https://storage.googleapis.com/cartographer-public-data/bags/backpack_3d/with_intensities/b3-2016-04-05-14-14-00.bagroslaunch cartographer_ros demo_backpack_3d.launch bag_filename:=${HOME}/Downloads/b3-2016-04-05-14-14-00.bag

总结

很简单,网上教程很多,希望能有改进,不然毕不了业。

cartographer安装和编译相关推荐

  1. cartographer 安装及报错

    本文引用自:cartographer 安装及报错_zchao9456的博客-CSDN博客 参考官网cartographer ros 官网Compiling Cartographer ROS - Car ...

  2. eclipse安装反编译插件(附jad下载)

    eclipse安装反编译插件(附jad下载) 博客分类: eclipse 一.eclipse反编译插件Jadclipse jadclips插件网站:    http://jadclipse.sourc ...

  3. 鲲鹏服务器设置ip文件,IPFS在鲲鹏云服务器中的安装与编译过程记录

    IPFS星际文件系统是一个旨在创建持久且分布式存储和共享文件的网络传输协议.它是一种内容可寻址的对等超媒体分发协议.在IPFS网络中的节点将构成一个分布式文件系统.它综合了几十年来学术界和开源领域成功 ...

  4. caffe安装,编译(包括CUDA和cuDNN的安装),并训练,测试自己的数据(caffe使用教程)

    caffe是一个非常清晰且高效的深度学习框架,目前有着不少的用户,也渐渐的形成了自己的社区,社区上可以讨论相关的问题. 我从开始看深度学习的相关内容到能够用caffe训练测试自己的数据,看了不少网站, ...

  5. SpringCloud(第 057 篇)CentOS7 安装 maven 编译工具

    2019独角兽企业重金招聘Python工程师标准>>> SpringCloud(第 057 篇)CentOS7 安装 maven 编译工具 一.大致介绍 1.maven 相信大家一点 ...

  6. sptk安装,编译流程

    SPTK是个有名的语音信号处理工具包. 其sptk安装,编译流程如下: 如果cygwin安装好(gcc,make,等安装好,见我另外的文章), ./configure make make instal ...

  7. wxwidget编译安装_wxWidgets编译安装方法 | 学步园

    1.下载最新的wxMSW:www.wxWidgets.org, 我这里使用的是wxMSW-2.8.12-Setup.exe, 安装之后按以下步骤进行操作: (1).cmd命令打开命令行, 设置MinG ...

  8. Ubuntu 14.04系统下安装和编译QT 5.9.2库(桌面版/ARM嵌入式IMX6版)

    最近要搞一个嵌入式项目,在I.MX6平台上基于linux系统使用QT做界面开发,于是就研究了一下如何对QT 5.9.2版本的代码进行下载和编译.同时,因为编译出来的程序不光要能在I.MX6嵌入式板子上 ...

  9. Linux本地yum源配置以及使用yum源安装gcc编译环境

    本文档是图文安装本地yum源的教程,以安装gcc编译环境为例. 适用范围:所有的cetos,红帽,fedroa版本 适用人群:有一点linux基础的小白 范例系统版本:CentOS Linux rel ...

最新文章

  1. java EE 5配置邮件发送 qq企业邮箱
  2. np.reshape带给我的内存错误
  3. TNS-12545: Connect failed because target host or object does not exist
  4. SAP Commerce Cloud Accelerator theme css 加载的问题和 multi step checkout
  5. 安装python3.7.0的步骤_CentOS7下简单安装python3.7.0步骤
  6. c++的头文件与源文件
  7. Linux mount: Structure needs cleaning 错误解决方法
  8. python中response.text_Sanic response text() 函数用法和示例
  9. 学习面向对象的第一天,感觉还好啦
  10. ip地址与整数的相互转化
  11. c语言输入学生成绩q退出,C语言-学生成绩管理系统实验报告13页
  12. 数据库基础(常用SQL语句)
  13. php 医疗报销系统,费用报销系统
  14. Movidius神经计算棒初体验
  15. 经典网络营销软文成功例子
  16. 人员玩手机离岗识别检测系统 yolov5
  17. 攻防演练第四年的一些碎碎念
  18. 腾讯股票接口怎样新建一个历史类数据的编程?
  19. 后缀名为jnlp的文件的打开方式
  20. 支付设计白皮书:支付系统的对账系统设计

热门文章

  1. MySQL 查看所有表和表字段
  2. Unity UI动画通过布尔变量来转换状态机的模板
  3. 2022大三计算机 | 保研面试 | 专业课(数据结构、计组等) 数学(离散等) | 资料整理
  4. CSDN APP微社区案例分析
  5. 八年级计算机知识,八年级计算机考试试题
  6. (Python)2048小游戏核心代码
  7. 整站快速变黑白灰的方法
  8. 链表使用基础——如何创建链表
  9. node.js案例:抽出特定的文件
  10. java编写回文素数_java编程 回文素数