在创建msg和srv文件之后,使用srv和msg文件时候需要对xml文件进行修改,如下:
需要对package.xml文件添加/取消注释以下命令行
<build_depend>message_generation</build_depend>
我安装的是indigo版本,发现package.xml文件中没有<run_depend>message_runtime</run_depend>
自己加上以后,出现以下问题:<run_depend>message_runtime</run_depend>
这表明该命令行不是合法的,删除该命令行后,出现以下问题:Error(s) in /home/leonsun/dev/catkin_ws/src/chapter2_tutorials/package.xml: - The manifest (with format version 2) must not contain the following tags: run_depend
表明应该添加run_time依赖,重新查找package.xml发现里面有如下代码catkin_package() DEPENDS on the catkin package 'message_runtime' which must therefore be listed as a run dependency in the package.xml Call Stack (most recent call first): /opt/ros/indigo/share/catkin/cmake/catkin_package.cmake:100 (_catkin_package) chapter2_tutorials/CMakeLists.txt:103 (catkin_package)
将其取消注释后运行成功,可见在indigo版本的Ros中应该使用以上命令来替代<exec_depend>message_runtime</exec_depend>
<run_depend>message_runtime</run_depend>