方案一 添加 micro-ROS 官方 apt 仓库(未成功)
micro-ROS 提供了独立的 apt 源,需要先添加。⚠️ 注意 :Foxy 对应 Ubuntu 20.04。如果你的系统不是 20.04,这个源可能没有对应的包。请确认你的 Ubuntu 版本:lsb_release -a
# 1. 添加 micro-ROS 的 GPG key 和软件源
sudo apt update && sudo apt install -y curl gnupg2 lsb-release
curl -sSL https://raw.githubusercontent.com/micro-ROS/micro_ros_setup/main/micro-ros.gpg | sudo gpg --dearmor -o /usr/share/keyrings/micro-ros-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/micro-ros-keyring.gpg] http://packages.micro.ros.org/ros2/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/micro-ros.list
# 2. 更新并安装
sudo apt update
sudo apt install ros-foxy-micro-ros-agent
方案二 从源码编译(通用方案)成功!!!
# 1. 确保已 source ROS2 Foxy 环境
source /opt/ros/foxy/setup.bash
# 2. 创建工作空间并克隆
mkdir -p ~/microros_ws/src
cd ~/microros_ws/src
git clone -b $ROS_DISTRO https://github.com/micro-ROS/micro_ros_setup.git src/micro_ros_setup
# 3. 安装依赖并编译
sudo apt update && rosdep update
rosdep install --from-paths src --ignore-src -y
colcon build
# 4. 使用
source install/local_setup.bash
ros2 run micro_ros_agent micro_ros_agent udp4 --port 8888
git clone这步如果失败,就手动下载文件,然后放到microros_ws/src文件夹下
git clone https://github.com/micro-ROS/micro_ros_setup.git 测试过可以下载
编译好后microros_ws/install文件夹下要有一个micro_ros_agent文件夹,没有的话把microros_ws/src/install文件夹复制过来
正确的构建步骤
# 1. 确保已 source(你已经做了)
source ~/microros_ws/install/local_setup.bash
# 2. 使用 micro_ros_setup 提供的脚本创建 agent 包
ros2 run micro_ros_setup create_agent_ws.sh
# 3. 编译 agent(这一步才会真正生成 micro_ros_agent 可执行文件)
ros2 run micro_ros_setup build_agent.sh
⚠️ build_agent.sh 内部会调用 colcon build 编译 micro-ROS-Agent 仓库,耗时较长(首次约5-15分钟),请耐心等待。
编译成功后运行
# 1. 先加载 ROS2 Foxy 基础环境(必须先加载这个!)
source /opt/ros/foxy/setup.bash
# 2. 再加载你的工作空间环境
source ~/microros_ws/install/local_setup.bash
# 3. 验证包是否可见
ros2 pkg list | grep micro_ros_agent
# 4. 启动 Agent
ros2 run micro_ros_agent micro_ros_agent udp4 --port 8888 -v6
例子:
退出:ctrl+c
永久解决(避免每次都手动 source)
将这两行添加到你的 ~/.bashrc 末尾:
echo 'source /opt/ros/foxy/setup.bash' >> ~/.bashrc
echo 'source ~/microros_ws/install/local_setup.bash' >> ~/.bashrc
source ~/.bashrc
之后新开终端即可直接使用 ros2 run micro_ros_agent ...
