简介
本节介绍包构建的相关信息。
如果所有的系统依赖都已经安装了,就可以直接编译包。一般的如果使用apt等包管理工具安装ROS,那么应该所有的依赖都已经安装好了。在构建之前,要确定ROS环境变量配置文件是否准备好。之前提到过很多次。
$ source /opt/ros/jade/setup.bash //对应jade版ROS来说
如何使用catkin_make
catkin_make是一个标准的catkin工作流的命令行工具,你可以想象成catkin_make调用了cmake和make对标准的CMake工作流进行了处理.
# 在catkin 工作空中
$ catkin_make [make_targets] [-DCMAKE_VARIABLES=...]
如果不了解如何使用CMake,它可以分解成一下步骤:
# in a cmake project
$mkdir build
$cd build
$cmake ..
$make
$make install #(optionally)
以上处理流程适合任何一个CMake项目。相对来说,catkin项目可以在一个工作空间中一个区构建,构建0个或多个包的流程如下:
# in a catkin workspace
$ catkin_make
$ catkin_make install #(optionally)
上面的命令将会构建任何在src文件夹下的包,如果源文件的名字不是src例如叫my_src,那么就要显式的指定源目录:
# in a catkin workspace
$ catkin_make --source my_src
$ catkin_make install --source my_src #(optionally)
更多的catkin_make用法:http://wiki.ros.org/catkin/commands/catkin_make
开始构建包
安装之前的教程,我们到工作空间中去执行catkin_make,会得到很多编译过程信息,包括:
指出各个空间;
执行cmake的过程;
检查编译器;
将cmake产生的makefile写入到build文件夹中;
执行make指令;
以上就是大概的catkin_make的过程。
执行完成后,可以在工作空间中看到多了一个build目录和devel目录。
build目录存放了构建过程文件,如makefile文件等构建文件;
devel存放了各个库文件和可执行文件;