You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu20.04下Ros2-Galactic编译报错:发现多个顶级包

ROS2 Galactic 编译报错与配置文件位置说明

pyproject.toml 和 setup.py 的位置

  • 若你是源码编译ROS2:这两个文件存放在本地ROS工作空间的src目录下,对应每个rqt相关包的独立文件夹中。比如你的工作空间路径为~/ros2_ws,那rqt主包的路径就是~/ros2_ws/src/rqt/,里面的rqt_graph、rqt_publisher等子包各自目录里都有setup.py,部分新包会附带pyproject.toml。
  • 若你是通过apt安装的ROS2:系统中只有编译完成的二进制文件,不会暴露这些源码配置文件。这种情况需要先把rqt相关包的源码克隆到本地工作空间,才能找到并编辑它们。

多Python版本的处理

Ubuntu20.04默认Python3.8,ROS2 Galactic依赖该版本运行,需确保编译时使用正确版本:

  • 用update-alternatives设置默认Python3:
    sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.8 1
    sudo update-alternatives --config python3
    
  • 或者直接在colcon编译时指定解释器:
    colcon build --cmake-args -DPYTHON_EXECUTABLE=/usr/bin/python3.8
    

解决"扁平布局多顶级包"报错的核心步骤

找到对应rqt包的setup.py后,重点修改data_files配置项。要避免把share、resource这类目录直接当作顶级包目录打包,需调整路径规则,仅将具体的资源文件(如ui文件、配置文件)按正确路径添加,不要包含整个目录。

内容的提问来源于stack exchange,提问作者SPDKalyan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 07:31:17