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
相关推荐
阿巴~阿巴~27 分钟前
Linux基本命令篇 —— alias命令
linux·服务器·bash
好名字更能让你们记住我1 小时前
Linux多线程(十二)之【生产者消费者模型】
linux·运维·服务器·jvm·windows·centos
门思科技1 小时前
设计可靠 LoRaWAN 设备时需要考虑的关键能力
运维·服务器·网络·嵌入式硬件·物联网
矩阵老炮1 小时前
Ubuntu20.4编译AOSP源码实践
ubuntu·aosp
学习编程的gas2 小时前
Linux开发工具——gcc/g++
linux·运维·服务器
嵌入式成长家2 小时前
ubuntu rules 使用规则
linux·ubuntu·rules 使用规则
_可乐无糖2 小时前
AWS WebRTC: 判断viewer端拉流是否稳定的算法
linux·服务器·webrtc·aws
数据智能老司机2 小时前
Linux内核编程——Linux设备模型
linux·架构·操作系统
椰汁菠萝2 小时前
ubuntu下免sudo执行docker
ubuntu·docker·免sudo
BD_Marathon3 小时前
ubuntu防火墙使用
linux·ubuntu