创建工作空间与功能包
创建ROS工作空间
简介
-
工作空间(Workspace)是一个存放工程开发相关文件的文件夹。在ROS系统下,我们所有的项目都放在同一个工作空间下,我们在工作空间下建立不同的功能包来实现不同的功能。这些功能包可以是你自己写的,也可以是你移植其他人的
-
src:代码空间(Source Space),用来放置我们的功能包
-
build:编译空间(Build Space),放置编译过程中产生的一些中间文件
-
devel:开发空间(Development Space),放置我们编译生成的可执行文件、动态链接库、静态链接库、脚本等
创建和构建
- 创建目录
$ mkdir -p ~/catkin_ws/src $ cd ~/catkin_ws/
- 编译
$ catkin_make
- 设置环境变量
$ echo "source /home/username/catkin_ws/devel/setup.bash" >> ~/.bashrc
- 检查环境变量
$ echo $ROS_PACKAGE_PATH /home/ksals/catkin_ws/src:/opt/ros/noetic/share
创建ROS软件包
文件
- CMakeLists.txt:定义package的包名、依赖、源文件、目标文件等编译规则
- package.xml:描述package的包名、版本号、作者、依赖、许可证等信息
- include:存放头文件
- src:存放源代码
创建和编译
- 创建
$ cd ~/catkin_ws/src $ catkin_create_pkg <package_name> [depend1] [depend2] [depend3] # 依赖项是你的这个功能包依赖于哪些功能模块
- 编译
$ cd ~/catkin_ws $ catkin_make
- 生效环境变量
$ . ~/catkin_ws/devel/setup.bash
同一个工作空间下,不允许存在同名功能包
不同工作空间下,允许存在同名功能包
如果您觉得阅读本文对您有帮助,请点一下“推荐”按钮,您的“推荐”将是我最大的写作动力!欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现