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

如何在不保留源码的情况下运行ROS节点,缩减Docker镜像体积

问题解决步骤
  • 修正构建流程,不要混用catkin config和catkin_make,前者属于catkin_tools工具的命令,后者是ROS原生构建命令,混用会导致安装配置不生效。二选一执行正确的构建流程即可:
    方案1:使用原生catkin_make构建安装版本
    cd /home/ubuntu/catkin_ws
    rm -rf build devel install # 清理之前的错误构建产物
    catkin_make -DCMAKE_INSTALL_PREFIX=./install
    catkin_make install
    
    方案2:使用catkin_tools构建安装版本
    cd /home/ubuntu/catkin_ws
    rm -rf build devel install
    catkin config --install
    catkin build
    
  • 验证包安装完整性,检查install/lib/oxford_gps_eth/目录下是否存在gps_node可执行文件,如果不存在说明该包的CMakeLists.txt未配置安装规则,需要手动补充:
    打开oxford_gps_eth包的CMakeLists.txt,添加如下规则后重新执行构建命令即可:
    install(TARGETS gps_node
      RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
    )
    install(DIRECTORY launch/
      DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/launch
    )
    
  • 启动节点前必须source安装目录的环境脚本,替换原来source devel空间的操作:
    source /home/ubuntu/catkin_ws/install/setup.bash
    
    此时执行echo $ROS_PACKAGE_PATH可看到路径列表中包含/home/ubuntu/catkin_ws/install/share,不存在原src目录路径。
  • 验证启动正常后,可直接删除src、build、devel三个目录,仅保留install目录即可,后续使用前只要source install目录下的setup.bash就能正常启动所有节点。

内容的提问来源于stack exchange,提问作者Zekarias Taye Hirpo

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 06:36:01