ROS目录结构

2023-05-16

参考:https://zhuanlan.zhihu.com/p/139405796

ROS项目通常组织在一个catkin的workspace下面,里面包含典型的文件和目录,如下

如上图所示,首先是最顶层的catkin工作空间,它是整个ROS工程中层次最高的概念。

工作空间也就是管理和组织ROS工程项目文件的地方。其下主要的一级目录有四个:

  • src:源空间
  • build:编译空间
  • devel:开发空间
  • install:安装空间

其中,

  • 最顶层的工作空间(可以任意命名)和 src (必须为src)文件夹是需要自己创建;
  • build 和 devel 文件夹由 catkin_make 命令自动创建;
  • install 文件夹由 catkin_make install 命令自动创建。
catkin 是 ROS 定制的编译构建系统,是对CMake的扩展,对ROS这样大体量的工程有更好的支持,同时也简化了操作。

注意:使用 catkin_make 编译之前一定要回到最顶层的工作空间。

1、src:源空间

存放功能包(package)。

功能包是ROS文件系统中组织程序文件的基本单元,也就是catkin编译的基本单元。一个 package 下必须包含 CMakeLists.txt 和 package.xml 两个文件:

  • CMakeLists.txt 文件中规定了功能包的编译规则,包括指定功能包名称,指定编译依赖项,指定要编译的源文件,指定要添加的消息格式文件/服务格式文件/动作格式文件,指定生成的消息/服务/动作,指定头文件搜索目录,指定链接库搜索目录,指定生成的静态链接库文件,指定需要链接的库文件,指定编译生成的可执行文件以及路径等等。
  • package.xml 文件定义了功能包的属性信息,包括包名,版本号,作者,编译依赖和运行依赖等。

另外,

  • include 和 src 分别存放头文件(*.h)和源程序文件(*.c/*.cpp等);
  • scripts 存放脚本文件(比如Python文件 *.py,shell文件 *.sh);
  • launch 存放 launch文件(*.launch),用于批量运行多个可执行文件;
  • config 存放配置文件(*.yaml等);

此外,还有自定义的通信格式文件,包括消息(*.msg)、服务(*.srv)以及动作(*.action)。

2、build:编译空间

存放CMake和catkin的缓存信息、配置信息和其他中间文件。

3、devel:开发空间

存放编译后生成的目标文件,包括头文件、动态&静态链接库、可执行文件等。

4、install:安装空间

即开发完成后的安装包。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ROS目录结构 的相关文章

  • 关于行业代码对应表的数据库设计及导入(4位行业代码)

    最近使用asp net 43 sqlserver 43 layui前端框架完成了一个小页面 xff0c 其中有一个功能是需要将行业代码表导入倒数据库 看到这个行业代码表 xff0c 刚开始还真是无从下手 xff0c 经过查询找到一个页面是关
  • Gitblit服务器邮件配置

    关于Gitblit在windows下邮箱配置 xff0c 网上资料比较少 xff0c 自己摸索步骤如下 xff0c 实测有效 xff0c 另外 xff0c 如果不了解SMTP协议 xff0c 建议配置之前先去大概了解下 xff0c 当然没有
  • 当你不想学习的时候,来看看大脑是怎么想的《摘抄与所想》

    尽管科学家一个接一个的科研成果让我们对记忆有了越来越多的了解 xff0c 但直到今天 xff0c 科学家所发现的所谓大脑的秘密也只是冰山一角 xff0c 在很大程度上 xff0c 大脑和记忆仍是神秘的 研究人员认为 xff0c 记忆是一个过
  • English learning method ---学英语重中之重打通“任督二脉”

    漫漫十年艰辛路 xff0c 英语学习之旅 曾经秉承 路漫漫其修远兮 xff0c 吾将上下而求索 的信念 xff0c 初一那年了解到原来 xff08 a b c d e f g xff09 不仅仅读作 xff08 啊 xff0c 波 xff0
  • DRP过后,感受知识间的通性

    DRP视频看了不短的时间 xff0c 真正开始DRP的时间是7月17号 xff0c 至今两个月了 由于暑假期间英语的学习占得时间比较多 xff0c 所以DRP视频进行的很慢 9月11号看完了DRP所有的视频 xff0c 这个项目完成后最大的
  • English learning method ---我谈音标学习

    最近在想这样一个问题 xff1a 每个地方都有自己的方言 xff0c 有些方言我们完全听不懂 xff0c 但是他们当地人却可以交流的很好 xff1b 而非本地人说方言 xff0c 就要模仿他们的腔调 xff0c 模仿的多了说出来的味也就像了
  • English learning method ---如何加强听力

    在之前的一篇博客 English learning method 学英语重中之重打通 任督二脉 中主要讲述的是听力的重要性 xff0c 在这篇博客中主要讲述如何加强听力 学习理论 语言学习始于听 xff0c 小孩首先通过近两年的听来学习语言
  • 电脑软件--开机提示ntldr is missing的原因和解决方法

    早上一朋友打电话来说 xff1a 你赶紧帮我问问老师 xff0c 我这电脑开始提示ntldr丢失该怎么解决 xff0c 这是公司电脑 xff0c 最好不要重装系统 我一听 xff0c 感觉她不相信我的能力 xff0c 跟她解释 xff1a
  • 走近SSH之Hibernate--com.mysql.jdbc.CommunicationsException: Communications link failure due to underlyi

    进行java的学习已有几个月的时间了 xff0c 可还是感觉使用vs 43 sqlserver开发比较舒服 xff0c 最近学习java框架 xff0c 接触了很多新概念 xff0c 遇到各式各样的问题真有些不习惯 xff0c 提示都是英文
  • English learning method ---听转向说的过渡期

    2013年暑假之后 xff0c 我们慢慢进入了一种新的英语学习阶段 沉默了两年的小宇宙 xff0c 终于要爆发了 xff0c 开口说英语的时候发现自己说英语跟纯正的英语还是有区别的 xff0c 就像地方方言跟普通话的区别一样 xff1b 我
  • 我的2013----IT女的一年经历

    2012对我来说是不平坦的一年 xff0c 经历了各种不顺 xff1b 还记得2012年结尾的总结 xff1a 2012草草走过 xff0c 只希望自己2013能努力 xff0c 努力 xff0c 再努力 2013一路走来感觉这条路挺畅通的
  • Eclipse下导入外部jar包的3种方式

    我们在用Eclipse开发程序的时候 xff0c 经常要用到第三方jar包 引入jar包不是一个小问题 xff0c 由于jar包位置不清楚 xff0c 而浪费时间 下面配图说明3种Eclipse引入jar包的方式 1 最常用的普通操作方式
  • Git 创建合并分支详解

    新建分支 xff1a step1 xff1a 在本地创建子分支 weimx 64 18NB0373 MINGW64 e test project Server master git branch newtest step2 xff1a 将本
  • Multiple markers at this line @Override的解决方法

    使用Eclipse 进行项目开发 xff0c 在实现类中的方法前面如果添加 64 Override就提示 Multiple markers at this line 的错误 xff0c 问题描述如下 Multiple markers at
  • C# web端 NPOI导出Excel详解

    最近的项目需求 xff0c 需要将SqlServer数据库中的数据导出到Excel中 xff0c 导出excel方式有很多 xff0c 其中一种方式是使用NPOI xff0c NPOI具体是什么 xff0c 可以参考博客NPOI使用手册 接
  • vs2010 "行号显示"设置(vs简单使用)

    Microsoft Visual Studio 2010 默认情况下是不显示代码的行号的 xff0c 但是在编译出错时 xff0c 可点击下面输出窗口中的错误提示进行定位 但是这样操作起来你有没有感觉到不方便呢 不显示行号时 xff0c 代
  • Win7下配置"JAVA环境变量"---JDK的安装与配置

    一 JDK的安装 JDK安装过程很简单 xff0c 可以均选择默认设置 xff0c 直接点击 34 下一步 34 即可 xff1b 安装目录可自定义到自己想安装的文件夹中 xff0c 这里 xff0c 我选择的安装目录为 xff1a E P
  • asp.net发布到IIS中出现错误:处理程序“PageHandlerFactory-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”

    开发web项目时需要安装IIS xff0c 在安装好IIS的Windows7本上发布asp net网站时 xff0c web程序已经映射到了本地IIS上 xff0c 但运行如下错误提示 处理程序 PageHandlerFactory Int
  • 廊坊师范学院IT提高班,你真正了解多少?

    最近在csdn博文中经常看到博友们问 xff0c 什么是提高班 xff1f 更有人对提高班怀有疑惑 or 不理解 廊坊师范学院信息技术提高班到底是怎样的一个地方 xff0c 你对这个地方又有怎样的认识 xff1f 你对这个地方是否怀有一份好
  • 那个大雨之夜,您与我们同在_____生活中的素质教育

    爱人者 xff0c 人恒爱之 xff1b 敬人者 xff0c 人恒敬之 题记 不幸此文让我写成了流水账 xff0c 仍真心的恳请您拿出宝贵的几分钟时间 静下心来细细品味这篇文章 xff0c 文字不够华丽 xff0c 但字字发自内心 那一个大

随机推荐