ROS机器人程序设计(原书第2版)2.4.4 编译ROS功能包

2.4.4 编译ROS功能包

一旦你创建了一个功能包,并且编写了一些代码,就需要编译功能包了。当你编译功能包的时候,主要是代码的编译过程。

为了编译功能包,可以使用catkin_make工具:

 

在几秒之后,你会看到:

 

如果没有看到错误提示信息,说明功能包编译成功。

记住你必须在工作空间文件夹运行catkin_make命令。如果你在其他文件夹这样做,命令无法执行,下面是一个例子:

 

当你在chapter2_tutorials文件夹试图用catkin_make编译功能包,你会看到如下错误:

 

当你在catkin_ws文件夹执行catkin_make命令,则会编译成功。

时间: 2024-10-27 13:49:26

ROS机器人程序设计(原书第2版)2.4.4 编译ROS功能包的相关文章

ROS机器人程序设计(原书第2版)2.1.2 功能包

2.1.2 功能包 功能包指的是一种特定的文件结构和文件夹组合.这种结构如下所示: include/package_name/:此目录包含了你需要的库的头文件. msg/:如果你要开发非标准消息,请把文件放在这里. scripts/:其中包括Bash.Python或任何其他脚本的可执行脚本文件. src/:这是存储程序源文件的地方.你可能会为节点创建一个文件夹或按照你希望的方式去组织它. srv/:这表示服务(srv)类型. CMakeLists.txt:这是CMake的生成文件. packag

ROS机器人程序设计(原书第2版)第1章 ROS Hydro系统入门

第1章 ROS Hydro系统入门 欢迎开始阅读本书第1章.本章将介绍如何安装ROS系统,它是一种新的标准化机器人系统软件框架.本书是基于ROS Fuerte的<ROS机器人程序设计>一书的升级版.通过ROS,你可以使用大量的示例代码和开源程序轻松地完成机器人编程和控制.同时,你还能够理解如何使用各种传感器与执行器,并为你的机器人增加新的功能,如自动导航和视觉感知等.得益于开源理念,以及持续开发最先进算法并不断提供新功能的开源社区,ROS不断进步完善. 通过本书,你将学习到如下内容: 在特定版

《通信技术导论(原书第5版)》——1.3 深度包检测:流量控制和管理

1.3 深度包检测:流量控制和管理 深度包检测(DPI)是一个网络运营商用来管理和了解网络流量的工具.它通过分析运营商有线和移动网络上所传数据包内容实现检测.在大多数情况下,DPI只检查数据包的包头而不是用户数据.它检查和寻找包头信息,如差错校验位.服务类型和结束信息位,而不是电子邮件消息本身.DPI是一个可以被运营商潜在的用来排挤竞争对手流量的应用程序.例如,运营商可以使用DPI降低和阻塞竞争对手服务器的流量.详见第6章中关于网络中立性的相关信息.网络中立性是指以平等的方式处理自己和竞争对手的

《 通信技术导论(原书第5版)》——1.2 数据包发送

1.2 数据包发送 所有的互联网流量和大部分的高速数据网流量都是通过包的形式发送的.将数据分拆成多个数据包类似于将数据装进多个信封中.分组交换由兰德公司在1962年为美国空军开发,并于1969年在国防部的阿帕网(ARPANET)中使用.ARPANET 是当今互联网的前身.国防部想要一个具有路径多样化能力的可靠的网络.开发者设想基于分组交换的ARPANET具有更高的可靠性,在那里可以完成彼此之间的互达.分组网络-包括互联网-往往更可靠,并且比传统网络能更好地处理高峰期流量,因为同一个信息的数据包可

ROS机器人程序设计(原书第2版).

机器人设计与制作系列 ROS机器人程序设计 (原书第2版) Learning ROS for Robotics Programming,Second Edition 恩里克·费尔南德斯(Enrique Fernández) 路易斯·桑切斯·克雷斯波(Luis Sánchez Crespo) 阿尼尔·马哈塔尼(Anil Mahtani) 亚伦·马丁内斯(Aaron Martinez) 著 刘锦涛 张瑞雷 等译 图书在版编目(CIP)数据 ROS机器人程序设计(原书第2版) / (西)恩里克·费尔南

Java核心技术 卷Ⅰ 基础知识(原书第10版)

Java核心技术系列 Java核心技术 卷Ⅰ 基础知识 (原书第10版) Core Java Volume I-Fundamentals (10th Edition) [美] 凯S.霍斯特曼(Cay S. Horstmann) 著 周立新 陈 波 叶乃文 邝劲筠 杜永萍 译 图书在版编目(CIP)数据 Java核心技术 卷Ⅰ 基础知识(原书第10版) / (美)凯S. 霍斯特曼(Cay S. Horstmann)著:周立新等译. -北京:机械工业出版社,2016.8 (Java核心技术系列) 书

《机器学习与R语言(原书第2版)》一1.2 机器学习的使用与滥用

本节书摘来自华章出版社<机器学习与R语言(原书第2版)>一书中的第1章,第1.2节,美] 布雷特·兰茨(Brett Lantz) 著,李洪成 许金炜 李舰 译更多章节内容可以访问"华章计算机"公众号查看. 1.2 机器学习的使用与滥用 大多数人听说过下国际象棋的计算机深蓝(Deep Blue)-第一台和一位世界冠军对弈并获胜的计算机,或者在电视问答游戏节目Jeopardy中击败两个人类对手的计算机Watson.基于这些令人震惊的成绩,有人预测计算机智能将在许多信息科学领域取

《面向对象的思考过程(原书第4版)》一1.9 继承

本节书摘来自华章出版社<面向对象的思考过程(原书第4版)>一书中的第1章,第1.9节,[美] 马特·魏斯费尔德(Matt Weisfeld) 著黄博文 译更多章节内容可以访问"华章计算机"公众号查看. 1.9 继承 面向对象程序设计的最强大的功能之一就是代码重用.结构化设计提供的代码重用非常受限.你可以编写一个功能块,然后多次重用它.但是面向对象的设计更进一步,允许你定义类之间的关系,通过组织和识别不同类之间的共性,不仅可以实现代码重用,也可以指导设计.继承是实现该功能的主

《面向对象的思考过程(原书第4版)》一1.5 究竟什么是对象

本节书摘来自华章出版社<面向对象的思考过程(原书第4版)>一书中的第1章,第1.5节,[美] 马特·魏斯费尔德(Matt Weisfeld) 著黄博文 译更多章节内容可以访问"华章计算机"公众号查看. 1.5 究竟什么是对象 对象是面向对象程序中的基础材料.使用面向对象技术的程序本质上是对象的集合.举例来说,一个公司系统包含了代表公司雇员的对象.接下来的小节描述了这些对象的数据和行为. 1.5.1 对象数据 存放在对象中的数据代表了该对象的状态.在面向对象术语中,数据被称为

《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一导读

前 言 致读者 本书是按照Java SE 8完全更新后的<Java核心技术 卷Ⅱ 高级特性(原书第10版)>.卷Ⅰ主要介绍了Java语言的一些关键特性:而本卷主要介绍编程人员进行专业软件开发时需要了解的高级主题.因此,与本书卷Ⅰ和之前的版本一样,我们仍将本书定位于用Java技术进行实际项目开发的编程人员. 编写任何一本书籍都难免会有一些错误或不准确的地方.我们非常乐意听到读者的意见.当然,我们更希望对本书问题的报告只听到一次.为此,我们创建了一个FAQ.bug修正以及应急方案的网站http:/