首页 > 其他分享 >(笔记)ROS2:ament_cmake类型功能包导入消息接口三步骤

(笔记)ROS2:ament_cmake类型功能包导入消息接口三步骤

时间:2022-11-04 10:55:55浏览次数:57  
标签:01 cmake service interfaces 导入 ament example ROS2

 

一、三个步骤

1. 在CMakeLists.txt中导入,具体是先find_packages再ament_target_dependencies。
2. 在packages.xml中导入,具体是添加depend标签并将消息接口写入。
3. 在代码中导入,C++中是#include"消息功能包/xxx/xxx.hpp"。

  

 

二、步骤举例

1. 在CMakeLists.txt中导入,具体是先find_packages再ament_target_dependencies。

# 这里我们一次性把服务端和客户端对example_interfaces的依赖都加上
find_package(example_interfaces REQUIRED)

add_executable(service_client_01 src/service_client_01.cpp)
ament_target_dependencies(service_client_01 rclcpp example_interfaces)

add_executable(service_server_01 src/service_server_01.cpp)
ament_target_dependencies(service_server_01 rclcpp example_interfaces)

  

2. 在packages.xml中导入,具体是添加depend标签并将消息接口写入

<depend>example_interfaces</depend>

 

3. 在代码中导入,C++中是#include"消息功能包/xxx/xxx.hpp"

#include "example_interfaces/srv/add_two_ints.hpp"

  

  

 

标签:01,cmake,service,interfaces,导入,ament,example,ROS2
From: https://www.cnblogs.com/tdyizhen1314/p/16856981.html

相关文章

  • cmake-子cmakelists传递变量
    主cmake子cmakePARENT_SCOPE传递回主cmake结果......
  • cmake-src子文件夹
    方法一main.c#include<stdio.h>#include<stdlib.h>#include"src/add.h"intmain(intargc,char**argv){ add(); exit(EXIT_SUCCESS);}cmakelists.tx......
  • cmake-foreach循环
    cmake_minimum_required(VERSION3.22)message("循环获取变量值的方式")set(a1)foreach(currentElement${a}bc) #获取变量值的方式 #循环遍历列表 message("for......
  • cmake-while
    foreachwhile......
  • cmake-if-else
    if-else直接设置ON、OFF命令行设置ON、OFF......
  • cmake-string
    FIND结果REPLACE结果APPEND结果......
  • cmake-lists
    list结果lists加分号结果......
  • cmake-cache变量
    使用cache变量的代码运行两次的结果执行命令安装ccmake运行ccmake.可以修改cache的变量直接cmake参数选项修改变量加FORCEoptionandcmake-gui......
  • 安装Mariadb-10.6.10 需要升级CMake 3.0 以上版本
    下载wgethttps://cmake.org/files/v3.22/cmake-3.22.6.tar.gz安装tarzxvfcmake-3.22.6.tar.gzcdcmake-3.22.6./bootstrapgmakegmakeinstall注意安装完后......
  • (笔记)一键安装ROS2与一键卸载ROS2
      一键安装:wgethttp://fishros.com/install-Ofishros&&.fishros 一键卸载:sudoaptremoveros-foxy-*&&sudoaptautoremove......