cartographer 最新版安装测试
在官网的基础上稍加修改,但保证代码都是最新的
我的系统配置: Debian9 strech, ROS lunar 该方法对 ubuntu 系列操作系统以及其他ROS版本同样适用。
1. 安装依赖库
sudo apt-get install -y \
g++ \
git \
google-mock \
libboost-all-dev \
libcairo2-dev \
libeigen3-dev \
libgflags-dev \
libgoogle-glog-dev \
liblua5.2-dev \
libsuitesparse-dev \
ninja-build \
python-sphinx
2. 安装ceres-solver
google提供的地址下载太慢,在github上git clone 也是太慢, 索性直接Donload zip
https://github.com/ceres-solver/ceres-solver.git
然后编译安装:
cd ceres-solver
mkdir build
cd build
cmake ..
make -j4
sudo make install
3. 安装proto3
a. 重要说明: 如果你已经安装了ROS Lunar, 恭喜你,其实你已经安装了protobuf了, 但是你没有安装protobuf-compiler, 你只需要安装一下protobuf-compiler就可以了
sudo apt-get install protobuf-compiler
然后你可以执行 protoc --version 查看protobuf 的版本.
b. 如果你装的是ROS Kinetic, 你的protobuf 的版本应该是 2.x, 需要手动将其升级到 proto3
方法:
下载链接 https://github.com/google/protobuf/releases
官方安装手册:https://github.com/protocolbuffers/protobuf/blob/master/src/README.md
安装:(下载安装all版本)
tar zxvf protobuf-all-3.6.0.tar.gz
cd protobuf-3.6.0/
./configure –prefix=/usr/local/ (安装路径,一般情况下,默认会安装到/usr/include 文件下,我们需要指定安装到,/usr/local/include文件下,安装完成会有一个goole文件在/usr/local/include 下)
make
make check
make install
protoc –version #查看版本
c. 如果你没有装ROS那么执行下面的步骤吧:
安装依赖
sudo apt-get install autoconf automake libtool curl make g++ unzip
方式一(推荐):
sudo apt-get install libprotobuf-dev
sudo apt-get install protobuf-compiler
方式二:
下载zip(git clone 太慢了)
地址: https://github.com/protocolbuffers/protobuf
编译安装:
./autogen.sh
./configure –prefix=/usr/local/
make -j4
make check
sudo make install
sudo ldconfig # refresh shared library cache.
make check 会提示又一些错误,没关系啦,核心库已经编译好啦
4. 安装cartographer
clone cartographer代码,这个速度还可以
git clone https://github.com/googlecartographer/cartographer.git
编译安装
cd cartographer
mkdir build
cd build
cmake ..
make -j4
sudo make install
5. 安装cartographer_ros
这个就简单了,地址:
https://github.com/googlecartographer/cartographer_ros
clone 或者下载到自己的ROS工作空间,编译一下就可以了.
6. 测试
2D:
// launch 2D example
roslaunch cartographer_ros demo_backpack_2d.launch bag_filename:=${HOME}/Downloads/cartographer_paper_deutsches_museum.bag

3D:
# Launch the 3D backpack demo.
roslaunch cartographer_ros demo_backpack_3d.launch bag_filename:=${HOME}/Downloads/b3-2016-04-05-14-14-00.bag
OK, 到此结束!
cartographer 最新版安装测试的更多相关文章
- 谷歌Cartographer学习 -快速安装测试
参考资料:https://www.cnblogs.com/hitcm/p/5939507.html PC下面进行安装: 遇到的问题如下 1.首先安装ceres solver 在编译的时候,如果是低配的 ...
- 谷歌Cartographer学习(1)-快速安装测试(转载)
转载自谷歌Cartographer学习(1)-快速安装测试 代码放到个人github上,https://github.com/hitcm/ 如下,需要安装3个软件包,ceres solver.cart ...
- mahout 安装测试
1 下载 在http://archive.apache.org/dist/mahout下载相应版本的mahout 版本,获取官网查看http://mahout.apache.org 相关的信息
- Hbase的安装测试工作
Hbase的安装测试工作: 安装:http://www.cnblogs.com/neverwinter/archive/2013/03/28/2985798.html 测试:http://www.cn ...
- ubuntu下opencv2.4.9安装测试
ubuntu下opencv2.4.9安装测试 whowhoha@outlook.com 一.依赖包安装 1. build-essential 软件包 sudo apt-get install bui ...
- 如何在本地安装测试ECSHOP 转载
如何在本地安装测试ECSHOP 如何在本地(自己的电脑)上先安装ECShop 一.创建PHP环境 1.下载AppServ 因为ECShop在线网上商店系统是用PHP语言开发的,所以,在本地架设网店之前 ...
- ubuntu-10.04的测试环境 安装测试 Coreseek开源中文检索引擎-Sphinx中文版
主要参考文档:http://www.coreseek.cn/products-install/install_on_bsd_linux/ 一. 32位版本: coreseek安装需要预装的软件: ap ...
- Centos 7.3 编译 & 安装 & 测试 facebook faiss
许多 AI 系统训练完毕,正式上线时的基本操作往往可以抽象为:在高维向量空间中,给定一个向量,寻找与之最相近的 k 个向量.当向量数目异常巨大时,如何快速地执行这一基本操作,便成为 AI 系统在工程应 ...
- Python 3.6.3 官网 下载 安装 测试 入门教程 (windows)
1. 官网下载 Python 3.6.3 访问 Python 官网 https://www.python.org/ 点击 Downloads => Python 3.6.3 下载 Python ...
随机推荐
- python 购物车小程序
python 购物车小程序 功能要求:1.启动程序后,输入用户名密码后,让用户输入工资,然后打印商品列表2.允许用户根据商品编号购买商品3.用户选择商品后,检测余额是否够,够就直接扣款,不够就提醒4. ...
- 数据挖掘的标准流程-CRISP-DM
1.起源 CRISP-DM (cross-industry standard process for data mining), 即为"跨行业数据挖掘过程标准".此KDD(know ...
- Hadoop生态圈-Ambari控制台功能简介
Hadoop生态圈-Ambari控制台功能简介 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在经历一系列安装过程之后(部署过HDP后我终于发现为什么大家喜欢用它了,部署比CDH简 ...
- windows安装mysql示例
1. 下载mysql安装包,如: mysql-5.6.34-winx64.zip2. 解压安装包到指定目录,如:D盘,即:D:\mysql-5.6.34-winx643. 配置 cd D:\mysql ...
- SpringBoot系列: Java应用程序传参和SpringBoot参数文件
===========================向java 程序传参的几种形式:===========================1. 使用 OS 环境变量. 这个不推荐. 2. 使用JVM ...
- C++解决case中不能定义局部变量问题
case Operation::DeviceAuthen: { std::string token = root["body"]["token"].asStri ...
- request.setCharacterEncoding()、response.setCharacterEncoding()的区别
request.setCharacterEncoding()是你设置获得数据的编码方式.response.setCharacterEncoding()是你响应时设置的编码.response.setCo ...
- python 爬虫得到网页的图片
import urllib.request,os import re # 获取html 中的内容 def getHtml(url): page=urllib.request.urlopen(url) ...
- js获取网页面的高度和宽度
网页可见区域宽:document.body.clientWidth网页可见区域高:document.body.clientHeight网页可见区域宽:document.body.offsetWidth ...
- js call使用
call 方法 请参阅 应用于:Function 对象 要求 版本 5.5 调用一个对象的一个方法,以另一个对象替换当前对象. call([thisObj[,arg1[, arg2[, [,.argN ...