当前位置: 首页 > article >正文

【环境搭建】ubuntu22安装ros2

基于某种特殊需求,从Ubuntu16到22目前都尝试过安装ros、ros2
参考1:http://t.csdnimg.cn/DzvSe
参考2:http://t.csdnimg.cn/sOzr1

1.设置locale
sudo apt update && sudo apt install locales
sudo locale-gen en_US en_US.UTF-8
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
export LANG=en_US.UTF-8
2.确认软件源
2.1 universe

使用如下命令检查:

apt-cache policy | grep universe

返回可能有若干行,但是应该包含如下内容:

500 http://us.archive.ubuntu.com/ubuntu jammy/universe amd64 Packages
    release v=22.04,o=Ubuntu,a=jammy,n=jammy,l=Ubuntu,c=universe,b=amd64

如果没有包含上述内容,那么输入如下命令:

sudo apt install software-properties-common
sudo add-apt-repository universe

Ubuntu 将其软件分为四个关键软件源:
 Main:默认启用,包含 Ubuntu 维护的自由和开源软件。
 Restricted:默认启用,提供设备的专有驱动程序。
 Universe:提供由社区维护的自由和开源软件,满足各种软件许可和维护需求。
 Multiverse:提供因版权或法律条款而受限的软件。

2.2 ros2软件源

先添加证书

sudo apt update && sudo apt install curl gnupg lsb-release
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

以上操作的本质是将ros.key这个文件下载并重命名为ros-archive-keyring.gpg到指定路径下。
按照官方给的教程是这个地址,但这个地址国内大概率是访问不了的,https://raw.githubusercontent.com,网上流传的直接将域名和IP加到hosts文件中其实也不实用,这个地址无论是域名还是IP我们都不好访问(国外地址)。

国内其实已经有人做好解决方案了,比如小鱼的一键安装,还有就是清华的解决方案,这里我们采用清华的软件源。

sudo apt update && sudo apt install curl gnupg lsb-release
sudo curl -sSL https://mirrors.tuna.tsinghua.edu.cn/rosdistro/ros.key  -o /usr/share/keyrings/ros-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] https://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu jammy main" | tee /etc/apt/sources.list.d/ros2.list > /dev/null

这里一定注意,[arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg]不要省略。完成以上操作后执行sudo apt update试下,不报错就是配好了。

3.安装ros2

这里安装的桌面版的,大概2G,也要注意ubuntu不同版本对应不同的ros2版本,不要强行安装非官方指定对应版本,会很麻烦。

sudo apt update
sudo apt upgrade
sudo apt install ros-humble-desktop

装完后记得配置环境变量

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

测试下

ros2 run demo_nodes_cpp talker

在这里插入图片描述

ros2 run demo_nodes_cpp listener

在这里插入图片描述


http://www.kler.cn/a/161930.html

相关文章:

  • React Hooks在现代前端开发中的应用
  • Diffusion Policy——斯坦福机器人UMI所用的扩散策略:从原理到其编码实现(含Diff-Control、ControlNet详解)
  • C语言 | Leetcode C语言题解之第556题下一个更大元素III
  • MySQL数据库:SQL语言入门 【下】(学习笔记)
  • 微服务架构面试内容整理-API 网关-Gateway
  • 结构体(c语言)
  • 麒麟KYLINOS操作系统修改GRUB字体大小
  • lodash常用方法
  • 2023.12.1 --数据仓库之 拉链表
  • ⭐Unity 搭建UDP客户端(01) 配合网络调试助手测试
  • BUUCTF-[GYCTF2020]FlaskApp flask爆破pin
  • Docker入门:容器化原理
  • Clean 架构下的现代 Android 架构指南
  • 实验3.5 路由器的单臂路由配置
  • 装配式技术助力EHS平台系统:打造全方位的安全在线监测平台!
  • 【PTA-C语言】编程练习4 - 数组Ⅱ
  • 【面试经典150 | 二叉树】翻转二叉树
  • ubuntu内移除snap
  • VUE2+THREE.JS 按照行动轨迹移动人物模型并相机视角跟随人物
  • 智能优化算法应用:基于材料生成算法无线传感器网络(WSN)覆盖优化 - 附代码
  • Thymeleaf生成pdf表格合并单元格描边不显示
  • SpringDataJPA基础
  • Cypress:前端自动化测试的终极利器
  • Leetcode刷题笔记题解(C++):165. 比较版本号
  • 安路Anlogic FPGA下载器的驱动安装教程
  • 【mysql】下一行减去上一行数据、自增序列场景应用