zoukankan      html  css  js  c++  java
  • ROS学习记录(四)————怎样建立一个package包?

            功能包是什么?

          英文表述package,我可没有在炫英文啊,我的英文很烂的,只是在提醒大家,在ROS系统中,这个词使用的频率非常之高,你必须记住它,要不就没法正确的看懂信息。言归正传,package是什么呢?指的是一种特定的文件结构和文件夹组合。

           如何识别一个package呢?

          通俗点儿的方式,就是找manifest.xml文件,这本来就是一个用来描述package相关的各类信息的一个文档,打开后可以看到包的名称、依赖关系等,下图就是一个manifest.xml的样子。当然,是用xml格式编写的,看不懂的xml的话,翻我另一篇博文就成了,如果一个文件夹下有这样一个文件,那这个文件夹描述的就有百分之九十的可能是package,为什么是有可能呢?请耐心看我下文道来。

           建立package需要用到的几个简单指令

          第一个:

    cd ~

        怎么样?非常简单吧!这条指令表示进入用户在该系统的home目录下,进行操作;如果你需要需要进入不同目录下进行操作,也可以用这个指令,比如,我想要进入到home目录下的一个叫catkin_ws的文件夹下的一个叫src文件夹下的一个叫做smartcar_description的文件夹里进行操作。

    那我就可以:

    就是通过这样,来回的切换目标目录的。

           第二个:roscreate-pkg [package_name] [depend1] [depend2] [depend3]

          这些依赖(depend)包括:std_msgs(包含了常见消息类型,表示基本数据类型和其他的消息构造)和rospy(一个ROS的纯python客户端库),roscpp(一个ROS的纯c++客户端库)

          说的这么枯燥,其实经常使用的格式就是:    

          roscreate-pkg  package的名字  std_msgs rospy roscpp,后边的depend基本上不咋变。

          比如,建立一个输入 roscreate-pkg  zeshou  std_msgs rospy roscpp

      

                第三个:

                rosmake

                用此命令来编译功能包,如果你没有编译,或者说你没有这步,就说明你这个package虽然形式上建立起来了,但实质上还没有跟底层进行连接,这就是为什么我说有 manifest.xml但也有可能不是功能包,我在执行的时候就遇到了,只完成了roscreate-pkg,但没rosmake,就死活用rospack 找不到,快怀疑人生了都,后来又试试了,有的时候,能找到,有的时候又找不到,见鬼了?——  ——(反正流程就是这)

                 

                第四个:

                rospack  find  package_name

               这个的作用是用来查找目标的          

               该怎么建立一个package呢?

    还不会啊,按上面四个代码一个一个敲就行了。

    选定文件夹->创建功能包roscreat-pkg->把新建的功能包编译rosmake->查找一下试试rospack 

    题外记:

    为什么我创建的这个功能包取名叫zeshou呢?因为最近刚刚看到那个文那在一席演讲,特别喜欢她创作的这个角色:泽寿!你喜欢吗?

       

    相信坚持的力量!
  • 相关阅读:
    php中的抽象方法和抽象类,简单明了,一点通
    PHP_保留两位小数并且四舍五入(可用于精度计算)_保留两位小数并且不四舍五入
    如何使用php生成唯一ID的4种方法
    Redis案例——商品秒杀,购物车
    centos+python2+apache2+django环境搭建
    前端上传图片并显示
    通过容器提交镜像(docker commit)以及推送镜像(docker push)
    Name or service not known原因大全
    VMware Workstation 与 Device/Credential Guard 不兼容.在禁用 Device/Credenti
    win10家庭版VMware,禁用Device/Credential Guard不兼容问题
  • 原文地址:https://www.cnblogs.com/duijinglianxinduijingxiuxing/p/7544412.html
Copyright © 2011-2022 走看看