package.xml
package.xml
简介
- 功能包清单(Package manifest)是一个名为 package.xml 的 XML 文件,它必须包含在任何符合 catkin 标准的功能包的根目录中
- 该文件定义了有关功能包的属性,例如功能包名称、版本号、作者、维护者以及对其他 catkin 包的依赖关系
基本结构
- 每个package.xml文件都有
<package>
标签作为根标记文件
<package format="2">
</package>
最小必要标签
<name>
:功能包名称<version>
: 版本号(需要3个点分隔的整数)<description>
:内容描述<maintainer>
:维护人员<license>
:软件许可证 (e.g. GPL, BSD, ASL)
例如:
<package format="2">
<name>foo_core</name>
<version>1.2.4</version>
<description>
This package provides foo capability.
</description>
<maintainer email="ivana@osrf.org">Ivana Bildbotz</maintainer>
<license>BSD</license>
</package>
依赖项
-
<depend>
:指定依赖项是编译、导出和运行依赖项。 这是最常用的依赖标签 -
<build_depend>
:指定编译此功能包所需的包 -
<exec_depend>
:指定需要哪些包来运行此功能包中的代码 -
<buildtool_depend>
:指定编译工具,一般情况下为catkin
例如:
<package format="2">
<name>foo_core</name>
<version>1.2.4</version>
<description>
This package provides foo capability.
</description>
<maintainer email="ivana@osrf.org">Ivana Bildbotz</maintainer>
<license>BSD</license>
<buildtool_depend>catkin</buildtool_depend>
<depend>roscpp</depend>
<depend>std_msgs</depend>
<exec_depend>message_runtime</exec_depend>
<exec_depend>rospy</exec_depend>
</package>
附加标签
<url>
:有关该软件包信息的URL,通常是ros.org上的wiki页面<author>
:作者
例如:
<package format="2">
<url>http://ros.org/wiki/foo_core</url>
<author>Ivana Bildbotz</author>
</package>