0

阿木币

0

精华

182 小时

在线时间

技术大V

Rank: 4

发表于 2020-9-13 19:39:25 2868 浏览 0 回复

[入门教程] catkin_make 与 catkin build

本帖最后由 chasing 于 2020-9-13 19:40 编辑

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

起因

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

使用方法

首先安装

  1. sudo apt-get install python-catkin-tools
复制代码

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

  1. mkdir -p test/src
  2. cd test
  3. catkin init
  4. cd src
  5. catkin create pkg pkg_a                    # Populate the source space with packages...
  6. catkin create pkg pkg_b
  7. catkin create pkg pkg_c --catkin-deps pkg_a
  8. catkin create pkg pkg_d --catkin-deps pkg_a pkg_b
  9. catkin list
  10. cd ..
  11. catkin build
  12. catkin clean
复制代码

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

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

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

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


扫一扫浏览分享
回复

使用道具 举报

返回列表
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表