ROS学习笔记7(编译ROS包)

编译程序包

  • 一旦安装了所需的系统依赖项,我们就可以开始编译刚才创建的程序包了。

  • 注意:如果你是通过apt或者其它软件包管理工具来安装ROS的,那么系统已经默认安装好所有依赖项。

  • 记得事先源你的环境配置(设置)文件,在Ubuntu的中的操作指令如下:

    $ source /opt/ros/groovy/setup.bash

使用catkin_make

  • catkin_make是一个命令行工具,它简化了catkin的标准工作流程。
  • 你可以认为catkin_make是在CMake标准工作流程中依次调用了cmake和make。
  • 使用方法:

# 在catkin工作空间下
$ catkin_make [make_targets] [-DCMAKE_VARIABLES=...]

  • CMake的标准工作流程主要可以分为以下几个步骤:
  • 注意:如果你运行以下命令是无效的,因为它只是一个演示CMake工作流程的例子。

  # 在一个CMake项目里
$ mkdir build
$ cd build
$ cmake ..
$ make
$ make install  # (可选)

为每个CMake项目运行此过程。

相比之下,catkin项目可以在工作空间中一起构建。在工作空间中构建零到多个catkin包遵循以下工作流程:

#在catkin工作区中
$ catkin_make
$ catkin_make install#(可选)

上面的命令将构建在src文件夹中找到的任何catkin项目。这符合REP128的建议。如果您的源代码位于不同的位置,比如my_src,那么您可以像这样调用catkin_make:

# In a catkin workspace
$ catkin_make --source my_src
$ catkin_make install --source my_src  # (optionally)

有关catkin_make的更高级用法,请参阅文档:catkin / commands / catkin_make

开始编译你的程序包

  • 对于正要马上编译自己代码的读者,请同时看一下后面的(C ++)/(Python)的教程
  • 因为你可能需要修改的CMakeLists.txt文件。
  • 按照之前的创建一个ROS程序包教程,你应该已经创建好了一个catkin工作空间和一个名为beginner_tutorials的catkin程序包。
  • 现在切换到catkin workspace并查看src文件夹:

  • 你可以看到一个名为beginner_tutorials的文件夹,这就是你在之前的catkin_create_pkg教程里创建的。
  • 现在我们可以使用catkin_make来编译它了:

$ catkin_make

  • catkin_make首先输出它所使用到的每个空间所在的路径。
  • 更多关于空间的信息,请参考REP128和絮/工作区。
  • 需要注意的是由于这些空间存在默认配置的原因,有几个文件夹已经在絮工作空间自动生成了,使用ls查看:

$ ls

  • build目录是build space的默认所在位置,同时cmake和make也是在这里被调用来配置并编译你的程序包。
  • devel目录是devel space的默认所在位置,同时也是在你安装程序包之前存放可执行文件和库文件的地方。
  • 现在我们已成功编译了一个ROS程序包,接下来我们将介绍ROS节点。

猜你喜欢

转载自blog.csdn.net/qq_27806947/article/details/82085505