ROS2 msg和srv CMake编写注意事项

文章介绍了在ROS2环境下,如何使用msg和srv文件,特别是指出与ROS1在CMakeLists.txt配置上的差异,需要手动添加功能包并使用ament_make工具。当配置不当时,系统会出现错误,解决方案是在CMakeLists.txt中添加特定代码段来指定可执行文件和依赖项。
摘要由CSDN通过智能技术生成

ROS2使用msg和srv可以参考官网:


  • 工程文件cpp所包含的头文件,其中 cpp_pubsub_self/msg/test.hpp 为msg消息消息生成的头文件,具体的可以参考官网
    在这里插入图片描述

注意事项:

在 ROS2 当中,使用 msgsrv 消息文件格式的时候,其中 CMakeLists.txt 文件当中和ROS1有点不同之处,就是 ROS2 需要自己添加自身的功能包,而且需要使用 ament_make 工具自行添加,不然就会出现如下错误:
在这里插入图片描述

解决方式

在 CMakeLists.txt 文件当中添加如下代码片段

add_executable(talker src/inter.cpp)
ament_target_dependencies(talker cpp_pubsub_self)

其中
talker 是编写发布者的节点名称,也是可执行文件的名称,可以自行定义
cpp_pubsub_self 是功能包的名称


运行结果

修改之后,运行结果如此图所示


🌸🌸🌸完结撒花🌸🌸🌸


🌈🌈Redamancy🌈🌈


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值