目录
1.2 配置相关文件package.xml和CMakeLists.txt
1.3 如果抛弃所在的文件,而是单纯的按照流程,应该这样写:
三、每编写一部分(这里的部分指的是发布方和订阅方)要进行一部分的配置
3.1 配置CMakeLists.txt,加入add_executable
3.2 配置CMakeLists.txt,加入add_dependencies
3.3 配置CMakeLists.txt,加入 target_link_libraries
前言
抛开代码,对话题通信的总结、相关注意事项以及一些流程问题
一、创建msg文件的流程
1.1 功能包下创建msg文件(有固定的格式要求)
1.2 配置相关文件package.xml和CMakeLists.txt
package.xml如名称所示,是关于包的一些操作,我们需要操作的有2个部分,因为是自定义的消息文件,需要我们自己添加编译依赖和执行依赖的包。这就是<build_depend>和<exec_depend>
CMakeLists.txt的主要作用是有了编译依赖和执行依赖的包,你具体编译与执行的时候要去寻找(依赖)这2个东西,这就是find_package和catkin_package,然后我们需要程序可以找到我们的自定义消息,所以我们需要把自定义消息加进去add_message_files。这个我们生成的自定义消息他的每一行其实是依赖于std_mags的,所以我们需要用到generate_messages。
1.3 如果抛弃所在的文件,而是单纯的按照流程,应该这样写:
先generate_messages然后add_message_files再<build_depend>和<exec_depend>然后再find_package和catkin_package。即自定义消息的相关操作(她的依赖和她的源)然后包的相关操作(添加 编译依赖的包和执行依赖的包) 然后再包的相关操作(编译编译依赖的包和执行执行依赖的包)
注意:没执行一部分要进行一部分的编译(所谓一部分就是换个文件)
二、创建C++文件之前的准备操作
2.1 关于vscode的配置,
就是创建C++文件的时候要加入自定义消息头文件的路径,以防报错,寻找不到,我们先配置一下,在功能包的vscode目录下的c_cpp_properties.json 的 includepath属性。然后再创建C++文件,进行相关代码的编写。
三、每编写一部分(这里的部分指的是发布方和订阅方)要进行一部分的配置
3.1 配置CMakeLists.txt,加入add_executable
把我们的代码编程系统可执行的,通俗点说改个名。
3.2 配置CMakeLists.txt,加入add_dependencies
自定义消息特有的!!!