修改自 ros 官方 wiki

http://wiki.ros.org/catkin/package.xml

package.xml文件定义了包的属性,包括软件名称,版本号,作者,维护者,以及依赖关系。

基本结构

每个package.xml文件都以<package>标记作为根标记

1
2
3
4
<?xml version="1.0"?>
<package format="2">

</package>

必备标签

No 标签 描述
1 <name> 包名
2 <version> 版本号(必须为 3 个点分隔的整数)
3 <description> 包内容的描述
4 <maintainer> 负责维护包裹的人员名称
5 <license> 许可,例如 GPL,BSD,ASL

依赖关系

名称 标签 描述
构建依赖关系 <build_depend> 指定构建此软件包所需要的软件包
导出依赖关系 <build_export_depend> 指定针对该软件包构建库所需的软件包
执行依赖关系 <exec_depend> 指定运行该软件包中代码所需的软件包
测试依赖 <test_depend> 指定单元测试的其他依赖项
构建依赖工具 <buildtool_depend> 指定此软件包自行构建所需的构建系统工具,通常只需要 catkin
文档工具依赖 <doc_depend> 指定此软件包生成文档所需的文档工具

特殊标签:<depend> 该标签相当于构建,导出,执行依赖关系。

原包(Metapackages)

将多个软件包分组为一个软件软件包,通过 metapackages 完成,标签如下:

1
2
3
<export>
<metapackage />
</export>

原包的 CMakeLists.txt 文件中必须包括

1
2
3
4
cmake_minimum_required(VERSION 2.8.3)
project(<PACKAGE_NAME>)
find_package(catkin REQUIRED)
catkin_metapackage()

附加标签

  1. <url> 有关包信息的 url
  2. <author> 包作者信息

评论