ROS中的package.xml详解

概述

package.xml文件是ROS软件包根目录下必要的文件。描述了包名、版本号、作者、维护者、对ROS软件包的依赖。

格式2

目前有两种格式的package.xml支持,其中格式2为推荐格式。如何将格式1转换为格式2请参见官方文档

基本结构

以<package>标签作为根标签。

<package format="2">

</package>

必要的标签

  • <name>包名
  • <version>版本号
  • <description>描述
  • <maintainer>维护者
  • <license>软件协议

依赖项

  • <depend>使用depend作为同时具有生成和执行依赖关系的包的快捷方式
  • <build_depend>对编译时需要的包使用build-depend
  • <build_export_depend>对生成时需要的包使用build_export_depend
  • <exec_depend>对运行时需要的包使用exec_depend
  • <test_depend>对只需要测试的包使用test_depend
  • <buildtool_depend>使用buildtool_depend生成工具包
  • <doc_depend>对只需要构建文档的包使用doc_depend

示例

<package format="2">
  <name>foo_core</name>
  <version>1.2.4</version>
  <description>
    This package provides foo capability.
  </description>
  <maintainer email="[email protected]">Ivana Bildbotz</maintainer>
  <license>BSD</license>

  <url>http://ros.org/wiki/foo_core</url>
  <author>Ivana Bildbotz</author>

  <buildtool_depend>catkin</buildtool_depend>

  <depend>roscpp</depend>
  <depend>std_msgs</depend>

  <build_depend>message_generation</build_depend>

  <exec_depend>message_runtime</exec_depend>
  <exec_depend>rospy</exec_depend>

  <test_depend>python-mock</test_depend>

  <doc_depend>doxygen</doc_depend>
</package>

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据