1 环境配置、创建功能包、编译、Cmake文件及package文件学习笔记

1 基本结构

放张 赵虚左老师的pdf截图

2 环境配置

//每次都需配置
. install/setup.bash

//或者一次配置

echo "source /path/to/your/workspace_name/install/setup.bash" >> ~/.bashrc

source ~/.bashrc

3 创建功能包

ros2 pkg create 包名--build-type 构建类型--dependencies 依赖列表--node-name 可执行程序名
称

--build-type:是指功能包的构建类型,有cmake、ament_cmake、ament_python 三种类 型可选;

--dependencies:所依赖的功能包列表;

--node-name:可执行程序的名称,会自动生成对应的源文件并生成配置文件。

4 编译

//全局编译
colcon build

//单独编译某一个包
colcon build --packages-select 包名

5 CmakeList.txt文件自己添加代码主要说明

(1)找包

find_package(库名 REQUIRED)

(2)生成可执行文件

add_executable(生成的可执行文件名 src/cpp文件1 src/cpp文件2 ...)

说明:这条指令是根据cpp1和cpp2....生成对应的可执行文件

(3)链接库

ament_target_dependencies(
可执行文件名
"库名1"
"库名2"
..
)

(4)指定生成的可执行文件的安装目录

install(TARGETS
可执行文件名
DESTINATION lib/${PROJECT_NAME})

6 package.xml文件说明

主要就是看依赖的库有没有少,少了就根据报错加

<depend>依赖的库</depend><depend>

7 运行

ros2 run 包名 可执行文件 参数
相关推荐
是懒羊羊吖~11 分钟前
Visual Studio Code的下载安装与汉化
笔记·visual studio
日记成书27 分钟前
详细介绍嵌入式硬件设计
嵌入式硬件·深度学习·学习
SRA.36 分钟前
STM32——HAL库开发笔记23(定时器4—输入捕获)(参考来源:b站铁头山羊)
笔记·stm32·嵌入式硬件
Dawndddddd39 分钟前
网络安全之攻防笔记--通用安全漏洞SQL注入&sqlmap&Oracle&mongodb&DB2
笔记·sql·安全·web安全
技术小齐1 小时前
网络运维学习笔记 022 HCIA-Datacom新增知识点03园区网典型组网架构及案例实战
运维·网络·学习
Dongwoo Jeong1 小时前
类型系统下的语言分类与类型系统基础
java·笔记·python·lisp·fortran·type
Cacciatore->2 小时前
笔记 大学物理B下册
笔记
hxung2 小时前
MySQL面试学习
学习·mysql·面试
weixin_502539853 小时前
rust学习笔记5-所有权机制
笔记·学习·rust
PyAIGCMaster3 小时前
50周学习go语言:第四周 函数与错误处理深度解析
开发语言·学习·golang