使用自定义包进行ros的.deb文件生成
创始人
2024-05-30 23:22:54

正常流程走下来应该是这样的

前置准备

sudo apt-get install python3-bloom
sudo apt-get install fakeroot

切换到工作目录(有package.xml的目录下)

bloom-generate rosdebian --ros-distro 你的ros版本
例:
bloom-generate rosdebian --ros-distro noetic

之后应该可以在当前目录下看到一个文件夹 debian下面有rules

fakeroot debian/rules binary

等待编译完成,就会在上层目录生成.deb文件

使用自定义包

在使用自定义ros包生成其他包时,如果使用bloom-generate rosdebian --ros-distro noetic时会报错,显示

Could not resolve rosdep key 'node_a''
Try to resolve the problem with 'node_a' and then continue.

解决:

  • 新建一个yaml文件,可以自定义名字

    sudo vim

    之后在vim中,输入i,进入编辑模式,键入依赖的包名,例如

    依赖_包名_a:ubuntu: [依赖-包名-a]
    依赖_包名_b:ubuntu: [依赖-包名-b]
    

    ​ 注:ubuntu: 前面有两个空格,后面有一个空格

    输入完成后,按esc进入命令模式,输入:w rosdeb.yaml保存,之后:q退出vim

  • 在rosdeb.yaml文件所在目录下输入pwd查看路径,复制该路径

  • 找到/etc/ros/rosdep/source.list.d目录,继续使用vim,修改20-default.list

    sudo vim 20-default.list

    添加 yaml file:///复制的路径/rosdep.yaml

    注:file后面一共三个 /

  • 运行rosdep update等待更新完成

  • bloom-generate --ros-distro ros的版本比如 bloom-generate --ros-distro noetic
    fakeroot debian/rules binary
    

    就可以完成对ros包的编译

参考:How to make a debian from a ROS package

相关内容

热门资讯

沙棘育苗旺 农户增收忙 东门村村民在基地工作。 技术员现场查看沙棘长势。本报记者 刘祎 摄本报记者 刘 祎8月8日,晴...
电视剧《生命树》 斩获第33届... 本报讯(西海新闻记者 吴梦婷)8月25日,第33届中国电视金鹰奖提名名单公布。由青海省广播电视局联合...
哪款4/3卡口镜头划算 婚礼现... 当婚礼仪式在教堂穹顶下悄然开启,烛光摇曳间新人相视一笑的瞬间稍纵即逝;当户外草坪婚礼遭遇薄暮微光,快...
芜湖粟科商贸因违反广告法相关规... 8月26日,芜湖市弋江区市场监督管理局公开披露芜市监易处罚〔2026〕7-343号行政处罚决定书,对...
数码相机性能排行榜 学生党低门... 清晨六点的图书馆天台,阳光斜切过镜头光圈;傍晚操场边,用延时记录社团招新人流;期末小组作业需要一段质...