一、前言
写在最前面,虽然前前后后也折腾了好几回,检查了好几回,肯定不免疏忽会有弄错的地方,如果有请及时留言指出,博主虽然更新比较慢,但是稍微还是会看一下,这样也可以给后面看的人有个勘误意见供参考。
【正式开始】
其实建立开发环境挺麻烦的,但还好有各种各样的包和大量的资料作为支持,在这里总结一下如何建立一个看起来顺眼,用起来稍微有点顺手的开发环境。
按照本文描述步骤一一完成后即可获得可以正常开发软件的极简环境了。
特此说明:本文仅提供最基础的开发方式,开发环境中所有术语及结构说明解释不是本文应阐述的内容范围,如有不理解的地方请尽量搜索或者查找相关学习资料完善学习。
为之后尽量减少给读者造成理解上的偏差,这里将文章撰写时间写明:【文章成于二〇二〇年初冬】,请以此时间作为阅读本文的参考时间。
二、操作系统环境
本节仅讲述Linux开源环境Ubuntu下的环境设置。
1. Ubuntu
下表为最近的三个版本Ubuntu的简介及下载链接,博主建议选取最新的LTS版本,这样在系统维护服务会有保障。
系统版本 | 系统名称 | 发布时间 | 终止维护时间 | 推荐系统配置 |
---|---|---|---|---|
16.04.7(LTS) | Xenial Xerus | — | — | — |
18.04.5(LTS) | Bionic Beaver | — | — | — |
20.04.1(LTS) | Focal Fossa | — | April 2025 | CPU:2 GHz(双核);内存:4 GB;硬盘:25 GB |
注:上表中标明“—”的代表:“官网未标明,请自行搜索信息”
对于上表中博主仅完成了最新的环境建立,其余环境并并未完成建立,最后未使用上述两个环境并非是环境不好而是遇到了短时间难以解决的问题,问题叙述如下:
- 在尝试建立前两个环境时,ros建立过程中sudo rosdep init出现无法下载的错误,按网络资料(解决方案1,解决方案2,解决方案3,解决方案4)尝试多次后均未能解决,大约需要访问部分显示404网络链接才能正常使用,总的来说解决方法过于复杂,故并未能成功建立这两个环境,如确有需要的读者可试着尝试。
2. VMWare【可选】
官方免费版下载地址或自行搜索免费版,关键字:VMware Workstation Player,或从这里下载。
Ubuntu虚拟机硬件配置
- 推荐配置:可按Ubuntu对应版本中提供的官方推荐设置完成设置。
- 简易要求:最低配置即满足小型开发和学习的需要,要求如下:
开发环境选取 | 最低配置 |
---|---|
Original开发环境 | 单核≥2GHz、内存≥2GB、硬盘空间≥20GB |
IDE开发环境 | 双核≥2GHz,内存≥3GB,硬盘空间≥25GB |
- 其它要求:如有其它要求可自行尝试设置或自行搜索相关信息。
三、ROS运行环境
1. ROS
可点击获取官方下载安装教程,或在下表点击版本名称进入安装教程。
版本 | 简称 | 发布日期 | 终止维护日期 | Ubuntu版本 |
---|---|---|---|---|
ROS Kinetic Kame | kinetic | May, 2016 | April, 2021 | 16.04 |
ROS Melodic Morenia | melodic | May, 2018 | May, 2023 | 18.04 |
ROS Noetic Ninjemys | noetic | May, 2020 | May, 2025 | 20.04 |
博主个人建议选用最新版(原因还是有维护(LTS)),当然各位读者可根据自身情况选用合适版本安装。
下面仅列举noetic的安装步骤Terminal指令,如有异议可参照上方给出的官方安装教程链接。
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 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
sudo apt-get update
sudo apt-get install ros-noetic-desktop-full
source /opt/ros/noetic/setup.bash
2. ROS周边设置
安装ros的辅助包,见以下Terminal指令。
#辅助包{可选安装,建议全装}
sudo apt-get install ros-$ROS_DISTRO-teleop-twist-keyboard ros-$ROS_DISTRO-amcl ros-$ROS_DISTRO-move-base ros-$ROS_DISTRO-slam-gmapping ros-$ROS_DISTRO-slam-karto ros-$ROS_DISTRO-map-server ros-$ROS_DISTRO-dwa-local-planner ros-$ROS_DISTRO-teb-local-planner
#其它常用及依赖软件{可选安装,建议全装}
sudo apt-get install vim
sudo apt-get install default-jdk
sudo apt-get install python
sudo apt-get install python3-pip
sudo apt-get install llvm
sudo apt-get install clang
sudo apt-get install clang-format
sudo apt-get install python3-argcomplete #argcomplete插件(python自动补全)
activate-global-python-argcomplete3 --user #激活argcomplete插件
#pip install update pip
#pip install pylint
pip3 install update pip
pip3 install pylint
注:argcomplete其它设置,仅供参考。
3. ROS开发包及帮助获取方式
ROS包搜索获取及安装Terminal指令
apt search ros-noetic #查找包的名称