1).新建workspace:

mkdir -p ~/catkin_helloros/src

2)创建package:

cd ~/catkin_helloros/src

catkin_create_pkg testtomros std_msgs roscpp

说明:std_msgs roscpp为包testtomros的依赖

3)编译package:

cd ~/catkin_helloros

catkin_make

4)创建节点:

进入package的src目录:

cd ~/catkin_helloros/src/testtomros/src

新建cpp:

touch hello.cpp

vim hello.cpp

然后编辑hello.cpp里面的内容。(具体可参见文末参考链接中的代码)

5)编译节点:

编辑CMakeLists.txt,打开package下的CMakeLists.txt:

cd ~/catkin_helloros/src/testtomros

vim CMakeLists.txt

在include_directories(include ${catkin_INCLUDE_DIRS})之后添加一下代码:

add_executable(hello src/hello.cpp)target_link_libraries(hello ${catkin_LIBRARIES})

然后回到工作根目录:

cd ~/catkin_helloros

catkin_make

生成的程序所在目录:

cd ~/catkin_helloros/devel/lib/testtomros

6)运行节点:

然后回到工作根目录:

cd ~/catkin_helloros

读取配置文件:

source ./devel/setup.sh

运行hello:

rosrun testtomros hello

参考链接:ROS学习笔记四:用C++编写ROS发布与订阅

ROS的程序编写流程相关推荐

  1. java开发的windows程序工作机制_Windows程序运行原理及程序编写流程

    #include "windows.h" #include "stdio.h" //定义窗口过程函数: LRESULT CALLBACK MyWndProc( ...

  2. ROS学习笔记三:编写第一个ROS节点程序

    在编写第一个ROS节点程序之前需要创建工作空间(workspace)和功能包(package). 一.创建工作空间(workspace) 创建一个catkin_ws: #注意:如果使用sudo一次性创 ...

  3. 【ROS】学习笔记一 ubuntu16.04下vs code配置ros环境并编写helloworld程序

    [ROS]ubuntu16.04下vs code配置ros环境并编写helloworld程序 一.vs code下载 1.相关配置要求: (1)系统为ubuntu16.04 (2)已安装好kineti ...

  4. 简述如何编写java程序_1-4 简述 Eclipse 编写 Java 程序的流程。_学小易找答案

    [填空题]三四年级是英语入门初学阶段,更加注重( ). [单选题]不属于pos终端收银机的基本构成是( ). A . 显示器 B . 小票打印机 C . 键盘 D . 条形码电子称 [单选题]( ) ...

  5. STM32程序编写总流程及技巧

    STM32程序编写总流程及技巧 1 打开固件库工程模板(以点亮LED为例) 2 在固件库模板 User里新建LED文件夹及led.c和led.h 3 双击添加led.c文件到工程 4 main.c文件 ...

  6. C# 公共控件及程序制作流程

    程序制作流程: 1.想这个程序是要干什么的,脑子里会大概有一个框 2.将界面搭出来,界面层 3.编写后台代码,业务逻辑层 4.数据访问层 计算器(思路): 1.事件数据用法 2.后台逻辑锻炼 3.程序 ...

  7. scala语言的底层是java实现的_Scala学习笔记一(与Java、Jvm的关系以及程序执行流程分析)...

    一.Scala语言与Java.Jvm的关系分析 Scala语言是马丁奥德斯基接触Java语言后,针对Java语言的特点,将函数式编程语言的特点融合到Java中,由此发明的.Scala语言和Java语言 ...

  8. ARM 之八 Cortex-M/R 内核启动过程 / 程序启动流程(基于IAR)

      在前面的文章<ARM 之 Cortex-M/R 内核启动过程 / 程序启动流程(基于ARMCC)>中已经介绍过了 Cortex-M/R 内核相关内容.这里基于 IAR 的启动流程与之前 ...

  9. 计算机脚本程序编写,实验三-shell脚本程序设计.docx

    实验报告 课程名称 Linux 系统实践 实验项目LINUX SHELL脚本程序设计 实验仪器PC 系别计算机学院 专业网络工程 班级 / 学号 网 1702/2017011463 学生姓名孟启贤 实 ...

最新文章

  1. Xamarin.FormsShell基础教程(6)Shell项目内容详情页面
  2. Harbor仓库的管理
  3. 回溯法(深度优先搜索)
  4. mysql类 php100_PHP100中,制作自己的PHP.MYSQL类中:Access denied for user ''@'localhost' (using password: NO)...
  5. Qt 2D绘图功能简单总结
  6. IO-BufferedInputStream
  7. SpringBoot_数据访问-整合MyBatis(二)-配置版MyBatis
  8. 关于部署传统的Dynamic Web项目
  9. 如何在Chrome development tool里查看C4C前台发送的未经 GZIP 压缩之前的请求细节
  10. 避免内存泄露及内存的规范化使用
  11. win10系统下如何查看端口被哪个进程占用
  12. 依赖的包_运维丨python安装mysql的依赖包mysqlpython操作
  13. 翻译:iOS Swift单元测试 从入门到精通 Unit Test和UI测试 UITest
  14. pxe启动找不到服务器,linux – PXE启动 – 在TFTP服务器上找不到内核
  15. ftp服务器连接不了文件路径,Serv-U和CuteFTP无法连接FTP服务器问题解答
  16. [HOJ1864]Fibonacci
  17. 02 | 该如何选择消息队列?
  18. 2. IMU原理及姿态融合算法详解
  19. 转:Ubuntu常用命令速查
  20. 【SQL自学打卡|DAY11】——苟日新,日日新,又日新

热门文章

  1. Oracle中的控制文件(control file)
  2. unity打包 winodws打包pc启动分辨率设置
  3. 关于中国神化体系的建立问题
  4. 你不知道的 Chrome 浏览器 骚操作
  5. 1万七千字精讲,JDK8 的 Lambda、Stream、LocalDate 骚技能
  6. php怎么脱离浏览器运行,php关闭浏览器继续运行
  7. 联讯证券宏观及固定收益高等剖析师
  8. 中国高端旅游人群洞察报告.pdf
  9. 虚拟机共享文件夹的作用
  10. 肩周炎自我锻炼(组图)