catkin程序包由什么组成?
一个程序包要想称为catkin程序包必须符合以下要求:
①该程序包必须包含catkin compliant package.xml文件 这个package.xml文件提供有关程序包的元信息。
②程序包必须包含一个catkin 版本的CMakeLists.txt文件,而Catkin metapackages中必须包含一个对CMakeList.txt文件的引用。
③每个目录下只能有一个程序包。 这意味着在同一个目录下不能有嵌套的或者多个程序包存在。
实验部分:
一、 创建一个catkin程序包
首先切换到之前通过创建 catkin 工作空间教程创建的 catkin 工作空间中的 src 目录下:
$ cd ~/catkin_ws/src
现在使用catkin_create_pkg命令来创建一个名为'beginner_tutorials'的新程序包,这个程序包依赖于std_msgs、roscpp和rospy:
$ catkin_create_pkg beginner_tutorials std_msgs rospy roscpp
这将会创建一个名为beginner_tutorials的文件夹,这个文件夹里面包含一个package.xml文件和一个CMakeLists.txt文件,这两个文件都已经自动包含了部分你在执行catkin_create_pkg命令时提供的信息。
二、程序包依赖关系
①一级依赖
之前在使用catkin_create_pkg 命令时提供了几个程序包作为依赖包,现在我们可以使用rospack命令工具来查看一级依赖包。$ rospack depends1 beginner_tutorials
$ roscd beginner_tutorials
$ cat package.xml
②间接依赖
一个依赖包还会有它自己的依赖包,比如,rospy还有其它依赖包。
执行该程序
$ rospack depends1 rospy
一个程序包还可以有好几个间接的依赖包,可以使用rospack可以递归检测出所有的依赖包。
三、自定义程序包
标签元素包括:
①描述‘标签
②维护者标签
③’许可标签
④依赖性标签
小结:
1 在创建程序包中,没有目录存在。需要在目录需要自己创建,使用mkdir
2 程序包的条件必须符合才能称之为程序包
学习时间 52分钟
操作时间 42分钟
按键次数 470次
实验次数 3次
报告字数 1494字
是否完成 完成