ubuntu下ROS1与ROS2共存安装(亲测有效,安装超简单)

基于ubuntu20.04安装,ROS1装noetic版本,ROS2装foxy版本。最好是刚装好的系统,避免各依赖间出现冲突。

这里采用的是小鱼的一行代码安装系列,相关链接如下:

如何一行代码安装ROS|2022最新版|一行代码安装ROS2|一行代码解决rosdep|一行代码配置多ROS环境

目录

一、安装ROS1

二、安装ROS2

三、配置环境


一、安装ROS1

先安装ROS1 noetic版本,执行以下命令进行安装,按照出现的提示对应操作即可:

wget http://fishros.com/install -O fishros && bash fishros

安装过程中有可能会报出以下错误:

 这是源的问题。

 将源文件做备份:

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

打开文件:

sudo gedit /etc/apt/sources.list

换源:将以下代码复制到打开的文件里面,保存并退出。(若还是无法安装ROS,仅保留复制的部分,删除其他部分。)

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

执行以下命令,进行更新:

sudo apt-get update

再次安装,安装成功ROS noetic版本。

若只安装单独版本的ROS,才进行以下步骤:

执行以下命令,打开.bashrc文件:

gedit ~/.bashrc

 在文件的末尾添加以下代码,若已有则不用管。(其中noetic可根据自己的ROS版本进行更改):

 source /opt/ros/noetic/setup.bash 

保存并退出,然后执行以下命令,刷新下环境。

source ~/.bashrc

二、安装ROS2

接下来安装ROS2 foxy版,继续使用小鱼的一行代码安装。

安装命令如下,按照出现的提示对应操作即可:

wget http://fishros.com/install -O fishros && bash fishros

ROS2 foxy版安装成功后会出现如下界面:

三、配置环境

此时ROS1和ROS2应该是共存的状态,执行以下命令,打开.bashrc文件。

gedit ~/.bashrc

 这里提供两种方法来进行ROS1和ROS2的切换。

方法一:

此种方法每当打开终端时就会提示进行版本的选择,终端演示如下:

 这种方法只需在刚刚打开的.bashrc文件末尾加上如下代码,即可实现。

echo "ros:noetic(1) foxy(2) ?"
read choose
case $choose in
1) source  /opt/ros/noetic/setup.bash;;
2) source  /opt/ros/foxy/setup.bash;;
esac

方法二:

如果并不是每次打开终端就要使用ROS,需要用到ROS的时候再进行选择。则可在末尾加上如下代码,以便每次需要用到ROS时,先输入ROS再通过选择1或者2来选择ROS的版本。

ros(){
echo "ros:noetic(1) foxy(2) ?"
read choose
case $choose in
1) source  /opt/ros/noetic/setup.bash;;
2) source  /opt/ros/foxy/setup.bash;;
esac
}

终端演示如下:

 最后执行以下命令,刷新下环境。

source ~/.bashrc

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

如果是君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值