ROS python错误"清单(格式版本2)不得包含以下标记:run_depend"

サルバ*_*バドル 5 python ros rospy

我一直在关注"用ROS编程机器人:机器人操作系统的实用介绍"

在本书的"定义新消息"部分中,我们创建了一个新的消息定义

Example 3-3. Complex.msg
float32 real
float32 imaginary
Run Code Online (Sandbox Code Playgroud)

所以我们需要修改package.xml并添加以下行:

<build_depend>message_generation</build_depend>
<run_depend>message_runtime</run_depend> 
Run Code Online (Sandbox Code Playgroud)

但是当我在catkin_ws目录中运行catkin_make时,我收到以下错误

Error(s) in /home/gtkratosman-lap/catkin_ws/src/basic/package.xml:
- The manifest (with format version 2) must not contain the following tags: run_depend
Run Code Online (Sandbox Code Playgroud)

我的版本:

ii  python-rospkg                                         1.1.4-100                                           all          ROS package library
ii  python-rospkg-modules                                 1.1.4-1                                             all          ROS package library
Run Code Online (Sandbox Code Playgroud)

这是完整的package.xml文件

<?xml version="1.0"?>
<package format="2">
  <name>basic</name>
  <version>0.0.0</version>
  <description>The basic package</description>

  <maintainer email="gtkratosman-lap@todo.todo">gtkratosman-
  lap</maintainer>

  <license>TODO</license>

  <buildtool_depend>catkin</buildtool_depend>
  <build_depend>rospy</build_depend>


  <run_depend>message_generation</run_depend>
  <run_depend>message_runtime</run_depend>

  <build_export_depend>rospy</build_export_depend>
  <exec_depend>rospy</exec_depend>

  <export>
  </export>
</package>
Run Code Online (Sandbox Code Playgroud)

lua*_*tor 12

您在package.xml中混合使用格式1和格式2: <run_depend>仅在格式1中可用,而在格式2中它应该是<exec_depend>格式1(格式1中不可用).

所以在你的情况下简单替换run_depend,exec_depend它应该是好的.

有关格式之间差异的更多信息,请参阅官方文档.


mae*_*ulj 2

只是省略格式。这是没有必要的,并且会破坏您的代码。将此模板用于您的 package.xml。

<?xml version="1.0"?>
<package>

    <name>basic</name>
    <version>0.0.0</version>
    <description>The basic package</description>

    <maintainer email="gtkratosman-lap@todo.todo">gtkratosman-lap</maintainer>

    <license>TODO</license>

    <buildtool_depend>catkin</buildtool_depend>
    <build_depend>rospy</build_depend>
    <build_depend>message_generation</build_depend>

    <run_depend>message_runtime</run_depend>

    <export>
    <!-- Other tools can request additional information be placed here -->
    </export>
Run Code Online (Sandbox Code Playgroud)

  • 当我省略格式时,`catkin_make` 默认为版本 1,这更糟糕。`- 清单(格式版本 1)不得包含以下标签:build_export_depend、exec_depend` (2认同)