cartographer-(0)-ubuntu(20.04)-环境安装

1.安装 ROS wiki.ros.org

1.1修改镜像源:

到网站上找与操作系统相匹配的镜像源

ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

复制代码
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-proposed main restricted universe multiverse

#1.root 用户
sudo passwd root
su - root


#2.root 用户 修改下载源
  cd /etc/apt/
  cp sources.list  sources-ini.list
  vim /etc/apt/sources.list

  apt-get  update
  apt-get upgrade

  apt install vim

1. 2.安装对应版本的ros

2.安装 cartographer

2.1先安装FTP服务器

复制代码
#1.安装ftp服务器
  apt install vsftpd
  systemctl status vsftpd
  cd /etc/vsftpd.conf
  
  vim /etc/vsftpd.conf
     local_enables=YES
     write_enable=YES
     anonymous_enable=YES
     anon_mkdir_write_enable=YES   //允许匿名用户在FTP上创建目录
     anon_upload_enable=YES  //允许匿名用户在FTP服务器上上传文件
     anon_other_write_enable=YES  //开启匿名用户的其他写权限

2.2 安装 cartographer依赖库

复制代码
#1.安装ROS
sudo apt install ros-melodic-desktop-full
#2.初始化rosdep
sudo rosdep init
apt install python3-rosdep2
rosdep update
#3.设置环境变量
 echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
        source ~/.bashrc
#4.安装rosinstall
   apt install python3-rosdep2
   apt install python-rosinstall python-rosinstall-generator python-wstool build-essential

复制文件到目录: cartographer_install
chmod +x auto-carto-build.sh
./auto-carto-build.sh 

2.3 安装编写的运行脚本 ceres-solver ,protobuf,cartographer

2.3.1 运行环境

/home/tang/cartographer/cartographer_install

安装脚本的编写参考:
Cartographer --- Cartographer documentation

复制代码
#!/bin/bash

#1 Install the required libraries that are available as debs.
# sudo apt-get update
sudo apt-get install \
    clang \
    cmake \
    g++ \
    git \
    google-mock \
    libboost-all-dev \
    libcairo2-dev \
    libcurl4-openssl-dev \
    libeigen3-dev \
    libgflags-dev \
    libgoogle-glog-dev \
    liblua5.2-dev \
    libsuitesparse-dev \
    lsb-release \
    ninja-build \
    stow \
    python3-wstool \
    python3-rosdep \
	python3-sphinx \
	libatlas-base-dev



#2 Build and install abseil-cpp
set -o errexit
set -o verbose

cd abseil-cpp
git checkout d902eb869bcfacc1bad14933ed9af4bed006d481
mkdir build
cd build
cmake -G Ninja \
  -DCMAKE_BUILD_TYPE=Release \
  -DCMAKE_POSITION_INDEPENDENT_CODE=ON \
  -DCMAKE_INSTALL_PREFIX=/usr/local/stow/absl \
  ..
ninja
sudo ninja install
cd /usr/local/stow
sudo stow absl


#3 Build and install Ceres.
cd -
cd ../../ceres-solver
mkdir build
cd build
cmake .. -G Ninja -DCXX11=ON
ninja
#CTEST_OUTPUT_ON_FAILURE=1 ninja test
sudo ninja install


#4 Build and install proto3.
cd ../../protobuf
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


#5 Build and install Cartographer.
cd ../../cartographer
mkdir build
cd build
cmake .. -G Ninja
ninja
#CTEST_OUTPUT_ON_FAILURE=1 ninja test
sudo ninja install

出现:

fatal: detected dubious ownership in repository

原因:权限的问题。

解决方法:

git config --global --add safe.directory /home/tang/cartographer/cartographer_install/abseil-cpp

2.3.2源码编译

目录:/home/tang/carto_ws/cartographer_detailed_comments_ws/

下载注释的代码:

https://github.com/xiangli0608/cartographer_detailed_comments_ws

git clone https://github.com/xiangli0608/cartographer_detailed_comments_ws.git

复制代码
#1.编译源码 git 下在
cd /home/tang/
mkdir carto_ws
cd carto_ws
git clone https://github.com/xiangli0608/cartographer_detailed_comments_ws.git

#更新git
git pull origin master


#2.编译源码
./catkin_make.sh

#3.vim ~/.bashrc 
source /home/tang/carto_ws/cartographer_detailed_comments_ws/install_isolated/setup.bash


#4. 4个包
/home/tang/carto_ws/cartographer_detailed_comments_ws/src/cartographer
/home/tang/carto_ws/cartographer_detailed_comments_ws/src/cartographer_ros/cartographer_ros
/home/tang/carto_ws/cartographer_detailed_comments_ws/src/cartographer_ros/cartographer_ros_msgs
/home/tang/carto_ws/cartographer_detailed_comments_ws/src/cartographer_ros/cartographer_rviz

error,当出现找不到rosbag等包时,不要修改cmake文件,安装各种包即可。

复制代码
sudo apt install ros-noetic-ros-rosbag
sudo apt install ros-noetic-turtle-tf2
sudo apt install ros-noetic-tf2-tools 
sudo apt install ros-noetic-urdf-tutorial

2.到目录下执行脚本编译

到目录下直接执行catkin_make不行,会报错

相关推荐
我先去打把游戏先17 小时前
Ubuntu虚拟机(服务器版本)Git卸载完全教程——彻底移除与清理配置
服务器·git·单片机·嵌入式硬件·物联网·ubuntu·51单片机
shandianchengzi18 小时前
【记录】Ubuntu|Ubuntu 26.04 笔记本耗电过快,排查 省电过程
linux·运维·ubuntu
承渊政道18 小时前
【MySQL数据库学习】(MySQL数据类型)
数据库·学习·mysql·ubuntu·bash·数据库开发·数据库系统
say_fall19 小时前
Linux进程核心概念:命令行参数与环境变量深度解析
linux·运维·服务器·ubuntu
dongdonglele52119 小时前
ubuntu 系统x86 架构安装docker,可以使用本地显卡
ubuntu·docker·架构
烛衔溟2 天前
TypeScript 模块与声明文件全解
linux·ubuntu·typescript
00后程序媛2 天前
ubuntu安装qemu和xv6
linux·运维·ubuntu
天疆说2 天前
在 Ubuntu 上安装 NASA GMAT R2026a 轨道设计软件
linux·运维·ubuntu
xiaobobo33302 天前
vscode打开Ubuntu虚拟机中文件资源管理器加载慢
vscode·ubuntu·资源管理器·加载慢
kvnew2 天前
Ubuntu 26.04 一键安装/修复拼音输入法fcitx5+Rime
linux·运维·ubuntu