在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

@

目录

1.安装 Ubuntu 18.04

​ 我使用的是Oracle VM VirtualBox 虚拟机软件

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

​ 我创建的虚拟机内存为9387MB「其实是我自己在划分内存的时候随便划分了一个」,选择了所有的8个核心「我电脑的处理器是Core i9的 8核心16线程,切记分配的时候一定要分配所有的核心也就是8个核心,而不是选择16个核心,因为另外8个核心并不存在」,硬盘分配了64GB,显存是128MB,基本够用了。

​ 我这里把系统上传到了百度云里面,大家自行下载,假若链接失效请及时私信我。

Ubuntu-18.04.5-Desktop-amd64 百度云链接 密码: 0u32

​ 随后按照常规步骤安装虚拟机即可

​ 后续为了方便共享剪切板,我们可以选择安装相关的增强软件

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

在安装完这些拓展程序之后,选择重新启动虚拟机,之后就可以使用共享剪切板了。


2.安装 ROS Melodic 的前期准备

2.1认识各版本 ROS 以及其支持的 Ubuntu 系统版本

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

​ 这张图片展示的就是各个版本Ubuntu系统所支持的ROS版本,咱们这里使用的是ROS Melodic Morenia 版本。在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

​ 这一代版本的ROS也是支持Windows 10的,至于为什么不用估计原因大家都知道「笑」

2.2准备换源

​ 换源的第一步,也是最重要的一步,就是先备份系统原有的源文件

cp /etc/apt/sources.list /etc/apt/sources.list.bak

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

​ 如果像我一样遇见了权限不够这种问题,那我们就在前面加上sudo即可

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

​ 这里面就是我们刚才创建的备份文件

​ 接下来就要准备更换源了「其实也可以不用换,直接魔法上网就可以了」

sudo vim /etc/apt/sources.list

2.2.1清华大学镜像站

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
     
    # 预发布软件源,不建议启用
    # deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
    # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

2.2.2中科大源

    deb http://mirrors.ustc.edu.cn/ubuntu/ precise-updates main restricted
    deb-src http://mirrors.ustc.edu.cn/ubuntu/ precise-updates main restricted
    deb http://mirrors.ustc.edu.cn/ubuntu/ precise universe
    deb-src http://mirrors.ustc.edu.cn/ubuntu/ precise universe
    deb http://mirrors.ustc.edu.cn/ubuntu/ precise-updates universe
    deb-src http://mirrors.ustc.edu.cn/ubuntu/ precise-updates universe
    deb http://mirrors.ustc.edu.cn/ubuntu/ precise multiverse
    deb-src http://mirrors.ustc.edu.cn/ubuntu/ precise multiverse
    deb http://mirrors.ustc.edu.cn/ubuntu/ precise-updates multiverse
    deb-src http://mirrors.ustc.edu.cn/ubuntu/ precise-updates multiverse
    deb http://mirrors.ustc.edu.cn/ubuntu/ precise-backports main restricted universe multiverse
    deb-src http://mirrors.ustc.edu.cn/ubuntu/ precise-backports main restricted universe multiverse
     
    deb http://security.ubuntu.com/ubuntu precise-security main restricted
    deb-src http://security.ubuntu.com/ubuntu precise-security main restricted
    deb http://security.ubuntu.com/ubuntu precise-security universe
    deb-src http://security.ubuntu.com/ubuntu precise-security universe
    deb http://security.ubuntu.com/ubuntu precise-security multiverse
    deb-src http://security.ubuntu.com/ubuntu precise-security multiverse


2.2.3阿里云源

#deb包
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
##测试版源  
deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
# 源码  
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
##测试版源  
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse
# Canonical 合作伙伴和附加  
deb http://archive.canonical.com/ubuntu/ xenial partner
deb http://extras.ubuntu.com/ubuntu/ xenial main

2.2.4网易源

    deb http://mirrors.163.com/ubuntu/ precise-updates main restricted
    deb-src http://mirrors.163.com/ubuntu/ precise-updates main restricted
    deb http://mirrors.163.com/ubuntu/ precise universe
    deb-src http://mirrors.163.com/ubuntu/ precise universe
    deb http://mirrors.163.com/ubuntu/ precise-updates universe
    deb-src http://mirrors.163.com/ubuntu/ precise-updates universe
    deb http://mirrors.163.com/ubuntu/ precise multiverse
    deb-src http://mirrors.163.com/ubuntu/ precise multiverse
    deb http://mirrors.163.com/ubuntu/ precise-updates multiverse
    deb-src http://mirrors.163.com/ubuntu/ precise-updates multiverse
    deb http://mirrors.163.com/ubuntu/ precise-backports main restricted universe multiverse
    deb-src http://mirrors.163.com/ubuntu/ precise-backports main restricted universe multiverse

2.3换源后

执行更新

 sudo apt-get update

更新软件

 sudo apt-get upgrade

3.开始安装 ROS Melodic

第一步,先添加源

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

第二步,添加密钥

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654

第三步,再更新一下

sudo apt-get update

接着来一个三部曲

sudo apt-get update
sudo apt-get install ros-melodic-desktop-full
sudo apt-get install ros-melodic-rqt*

等待完成后就可以开始初始化rosdep

不过我在这里遇见一个问题:rosdep:找不到命令

只需要安装一下python-rosdep这个包就好

sudo apt-get install python-rosdep

接着初始化

sudo rosdep init
rosdep update

完成之后,紧接着安装rosinstall

sudo apt-get install python-rosinstall

加载环境设置文件「这个东西还是很常使用的,比如出现找不到命令的时候就得要在根目录加载一下环境设置文件」

source /opt/ros/melodic/setup.bash

创建并初始化工作目录

mkdir -p ~/catkin_ws/src
 
cd ~/catkin_ws/src
 
catkin_init_workspace

cd ~/catkin_ws/
 
catkin_make

设置环境变量

sudo apt install net-tools
gedit ~/.bashrc
# Set ROS melodic
source /opt/ros/melodic/setup.bash
source ~/catkin_ws/devel/setup.bash
 
# Set ROS Network
#ifconfig查看你的电脑ip地址
export ROS_HOSTNAME=        #你的电脑的IP地址
export ROS_MASTER_URI=http://${ROS_HOSTNAME}:11311
 
# Set ROS alias command 快捷指令
alias cw='cd ~/catkin_ws'
alias cs='cd ~/catkin_ws/src'
alias cm='cd ~/catkin_ws && catkin_make'



4.测试

roscore
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key

打开三个终端,一个终端一行代码

请务必按顺序启动

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

这里我遇见了一个问题,就是出现:Command 'xxxxx' not found

这里根据下面的提示

sudo apt install rosbash

之后回到根目录

source ~/catkin_ws/devel/setup.bash

就完成了

遇见类似问题这样解决就好

就可以看到小乌龟划线了

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

大家可以参考我上一篇在Jetson Nano上面安装ROS的教程,说实在不是很成功,等我有时间我再重新写一篇在Jetson nano上的安装教程

第一篇关于在Jetson Nano上安装ROS的教程,不是很成功


5.后续遇到的若干问题

5.1 Command 'roscore' not found, but can be installed with

像是如下这类问题

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

我们先检查一下有没有安装包

cd /opt/ros/melodic/bin
ls

这里分两种情况

5.1.1 文件夹内没有roscore

在bin目录里面安装

sudo apt-get install ros-melodic-desktop

再次查看,看到了roscore,成功,添加环境变量

source ~/.bashrc
roscore

发现能够启动,完成

5.1.2 文件夹内有roscore

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

这类问题表示roscore没有添加到环境变量

echo "source /opt/ros/melodic/setup.bash" >>~/.bashrc

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

source ~/.bashrc

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

之后我们再次启动roscore

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器
这样,Command 'roscore' not found, but can be installed with 这个问题就解决了


6.安装Gmapping

6.1 安装依赖库

sudo apt-get install libsdl1.2-dev
sudo apt install libsdl-image1.2-dev

6.2 安装GMapping

方式1:通过apt的方式安装

sudo apt-get install ros-melodic-gmapping

在Ubuntu18.04里安装ROS,处理器架构基于x86架构处理器

方式2:通过源码安装「第一种方法不可行的时候」

首先进入工作空间

cd ~/catkin_ws/src/

Git clone

git clone https://github.com/ros-perception/openslam_gmapping.git
git clone https://github.com/ros-perception/slam_gmapping.git
git clone https://github.com/ros-planning/navigation.git
git clone https://github.com/ros/geometry2.git
git clone https://github.com/ros-planning/navigation_msgs.git

编译

cd ..
catkin_make

这样Gmapping就安装完了


上一篇:新ES官方测试数据-测试数据.json


下一篇:Vue3.x 的七种组件通信方式