习惯使用了catkin_make, 又接触到了catkin build。

起因

在vscodevscodevscode中开发ROS工程,好像vscode 发现工程有某个路径不对,然后提示修改了工程配置,手快点击了确认…然后,就发现再也编译不了修改的源文件了(显示在编译,其实并没有…),这种情况之前也遇到过,解决方法是重新建立一个工作空间,catkin_init_workplace 走一遍,无奈ROS工程下没有一个clean,实在不方便。

使用方法

首先安装

sudo apt-get install python-catkin-tools

然后参照官网快速的可以建立一个ROS工程,还是比较方便的,官网传送门

mkdir -p test/src
cd test
catkin init
cd src
catkin create pkg pkg_a                    # Populate the source space with packages...
catkin create pkg pkg_b
catkin create pkg pkg_c --catkin-deps pkg_a
catkin create pkg pkg_d --catkin-deps pkg_a pkg_b
catkin list
cd ..
catkin build
catkin clean

对于已经使用cakin_init_workspace建立的工作空间,只需要把build和devel删除掉,然后再执行编译就可以了。

优势

  1. 有catkin clean了,而且clean之后只有一个src文件夹了,这比较方便上传github了。
  2. 可以单独编译某一个功能包以及对应的依赖,这样方便了功能包的管理。不在需要每个工程够构建一个功能包了。
  3. 界面比较炫酷。
  4. 附带的指令内容可以单独编译等,具体还没有研究过。

Appendix

在ROS包从github上下载的时候,有时候仓库作者的代码包有一些依赖关系,已经wrapped in the .rosinstall 中,此时需要通过wstool工具进行关联下载即可。(ROS offical document建议采用vcstool代替 wstool工具,但是前者没有成功,带后期再进行尝试)

  1. 首先建立工程.rosinstall 文件,wstool init /src
  2. 进行合并 wstool merge -t src “target_repo”/depedence.rosinstall
  3. 更新 wstool update -t src -j4 ,此时会下载对应的github仓库代码文件
  4. 设计关联编译 catkin config --merge-devel
  5. 编译 catkin build

catkin_make 与 catkin build相关推荐

  1. catkin_make, cmake, catkin build区别

    文章目录 1 catkin的历史 1.1 Legacy Catkin Workflow 1.2 Isolated Catkin Workflow 1.3 Parallel Isolated Catki ...

  2. ROS: catkin_make/catkin_make_isolated/catkin build/colcon的区别

    1. catkin_make catkin_make是第一个构建catkin工作区的脚本,因此在许多教程中使用.它有几个缺点(需要包中的非标准逻辑来声明跨包目标依赖关系)和限制(不能处理普通的CMak ...

  3. catkin build 和 catkin_make

    首先安装: sudo apt-get install python-catkin-tools 编译过程中你可能会遇到以下错误,那是因为以前使用了catkin_make进行编译,需要把build和dev ...

  4. catkin build 工作空间锁定 —— [build] Error: Unable to find source space `/home/xxx/src`

    问题:catkin build 的时候,不能在自己定的文件夹下编译,总会去找根目录 解决方法: home下ctrl+h显示隐藏文件 删除文件夹.catkin_tools

  5. MoveIt 1 源码构建: Linux

    MoveIt 1 源码构建: Linux 从源代码安装MoveIt是向开源项目提供新特性.优化和bug修复的第一步. MoveIt主要在Linux上支持,特别是以下构建指令支持: Ubuntu 20. ...

  6. 无人机路径规划1:orbslam2+VIO

    无人机路径规划1:orbslam2+VIO 安装XTDRONE平台 https://www.yuque.com/xtdrone/manual_cn/basic_config ros基本操作 ros中文 ...

  7. ubuntu系统配置大恒相机驱动并读取ros话题

    文章目录 0. 说明 1. 安装大恒相机sdk 1.1 下载 1.2 安装sdk(用于配置ip和调试相机参数) (1) 电脑网卡配置(网卡固定ip) (2)查看相机图像以及配置相机参数 2. 安装ro ...

  8. ROS2GO之慕课《机器人操作系统入门》配置与使用(2018-2019-2)

    ROS2GO之慕课<机器人操作系统入门>配置与使用(2018-2019-2) icourse163中国大学MOOC<机器人操作系统入门>第二次开课! 新版本地址 已将新版本代码 ...

  9. 11_创建ROS msg和srv文件

    本教程介绍了如何创建msg和srv文件,以及rosmsg,rossrv,roscp等命令行工具.至于为什么选择deepin而不是ROS通用的ubuntu,也仅仅是为了支持国产系统.鉴于本人水平有限,如 ...

最新文章

  1. MVC、MVP和MVVM的优缺点
  2. 在Oracle VM VirtualBox中如何安装64位虚拟机系统
  3. python项目归纳总结-【第108期】总结最近项目中常用的几个Python库
  4. 从Java代码到Java堆理解和优化您的应用程序的内存使用
  5. 强化学习6——Policy-based RL(MC policy gradient)
  6. c++调用mysql存储过程_C++中ADO调用MySQL存储过程失败,诡异的语法异常,求解中,附源码...
  7. P1552 [APIO2012]派遣
  8. 解决一个驱动代码解耦合问题
  9. Django之Model操作
  10. android h5选择图片上传,js-微信H5选择多张图片预览并上传(兼容ios,安卓,已测试)...
  11. SAP License:什么是ERP供应链
  12. Mark—零散知识汇总
  13. 漫游项目服务器,漫游Radius服务器的设计与实现
  14. 透过微积分看芝诺悖论-龟兔赛跑
  15. 天黑时间跟经度还是纬度有关_时差由纬度还是经度决定
  16. 自定义wordpress登陆界面全屏渐变图片轮播
  17. 基于YOLOv5的血细胞识别和计数
  18. 作为管理者,就不要总等着领导给你布置任务了
  19. 2021-07-16思考-资本源于贪婪(与人性抗争)
  20. EXCEL编程经验总结

热门文章

  1. Glide缓存图片流程浅析
  2. java node clone,Java Node.cloneNode方法代码示例
  3. 用过的最好的自动机画图工具  JFLAP
  4. android平台1.3寸OLED屏调试
  5. 《月亮与六便士》随感
  6. lumia手机邮件hotmail服务器设置,采用Windows10Mobile系统的Lumia手机用户手册-Microsoft.PDF...
  7. STM32 的 USB 控制器
  8. Shift键连按4下后键盘长按才有反应
  9. qml的ListView控件添加ScrollBar
  10. 物联网卡联网原理是什么?为什么有时无法使用?