ros2 ubuntu 20.04 安装 foxy

设置区域设置

确保您有一个支持UTF-8. 如果您处于最小环境(例如 docker 容器)中,则区域设置可能是最小的,例如POSIX. 我们使用以下设置进行测试。但是,如果您使用不同的 UTF-8 支持的区域设置,应该没问题。

复制代码
locale  # check for UTF-8

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

locale  # verify settings

设置源

您需要将 ROS 2 apt 存储库添加到您的系统中。

首先确保Ubuntu Universe 存储库已启用。

复制代码
sudo apt install software-properties-common
sudo add-apt-repository universe

现在使用 apt 添加 ROS 2 GPG 密钥。

复制代码
sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

若使用上述命令报该错:

curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused

可以参考:
ROS2安装过程中,使用 apt 添加 ROS 2 GPG 密钥报错

然后将存储库添加到您的源列表中。

复制代码
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

安装 ROS 2 软件包

设置存储库后更新 apt 存储库缓存。

复制代码
sudo apt update

ROS 2 软件包构建在经常更新的 Ubuntu 系统上。始终建议您在安装新软件包之前确保系统是最新的。

复制代码
sudo apt upgrade

桌面安装(推荐):ROS、RViz、演示、教程。

复制代码
sudo apt install ros-foxy-desktop python3-argcomplete

ROS-Base 安装(裸骨):通信库、消息包、命令行工具。没有 GUI 工具。

复制代码
sudo apt install ros-foxy-ros-base python3-argcomplete

开发工具:编译器和其他构建ROS包的工具

复制代码
sudo apt install ros-dev-tools
sudo apt upgrade
sudo rosdep init
rosdep update

环境设置

获取安装脚本

通过获取以下文件来设置您的环境。

复制代码
# Replace ".bash" with your shell if you're not using bash
# Possible values are: setup.bash, setup.sh, setup.zsh
source /opt/ros/foxy/setup.bash

尝试一些例子

如果您ros-foxy-desktop在上面安装了,您可以尝试一些示例。

在一个终端中,获取安装文件,然后运行 ​​C++ talker

复制代码
source /opt/ros/foxy/setup.bash
ros2 run demo_nodes_cpp talker

在另一个终端中获取安装文件,然后运行 ​​Python listener

复制代码
source /opt/ros/foxy/setup.bash
ros2 run demo_nodes_py listener

您应该看到talker"这是Publishing消息"和"这些消息"这listener句话。这验证了 C++ 和 Python API 是否正常工作。万岁!I heard

备用编译器

使用 gcc 之外的其他编译器来编译 ROS 2 很容易。如果您将环境变量CCCXX分别设置为工作 C 和 C++ 编译器的可执行文件,并重新触发 CMake 配置(通过使用--force-cmake-config或删除您想要受影响的包),CMake 将重新配置并使用不同的编译器。

配置 CMake 以检测和使用 Clang:

复制代码
sudo apt install clang
export CC=clang
export CXX=clang++
colcon build --cmake-force-configure
相关推荐
可可嘻嘻大老虎2 小时前
nginx无法访问后端服务问题
运维·nginx
JiMoKuangXiangQu2 小时前
ARM64 进程虚拟地址空间布局
linux·arm64 虚拟地址布局
阳光九叶草LXGZXJ3 小时前
达梦数据库-学习-47-DmDrs控制台命令(LSN、启停、装载)
linux·运维·数据库·sql·学习
无忧智库3 小时前
某市“十五五“地下综合管廊智能化运维管理平台建设全案解析:从数字孪生到信创适配的深度实践(WORD)
运维·智慧城市
春日见3 小时前
如何避免代码冲突,拉取分支
linux·人工智能·算法·机器学习·自动驾驶
珠海西格4 小时前
“主动预防” vs “事后补救”:分布式光伏防逆流技术的代际革命,西格电力给出标准答案
大数据·运维·服务器·分布式·云计算·能源
无垠的广袤4 小时前
【VisionFive 2 Lite 单板计算机】边缘AI视觉应用部署:缺陷检测
linux·人工智能·python·opencv·开发板
阿波罗尼亚4 小时前
Kubectl 命令记录
linux·运维·服务器
Fᴏʀ ʏ꯭ᴏ꯭ᴜ꯭.4 小时前
Keepalived单播模式配置与实战指南
linux·服务器·负载均衡
IDC02_FEIYA4 小时前
Linux文件搜索命令有哪些?Linux常用命令之文件搜索命令find详解
linux·运维·服务器