1、catkin_make:catkin_make
是ROS中最常用的构建命令,使用的是catkin
构建系统。它是ROS的默认构建工具,能够构建整个ROS工作空间中的所有功能包。使用catkin_make
时,它会执行以下步骤:
- 配置构建环境:生成构建所需的CMakeLists.txt文件、设置构建参数等。
- 执行CMake:根据CMakeLists.txt文件生成构建系统所需的Makefile。
- 进行构建:根据生成的Makefile编译功能包并生成构建结果。
使用catkin_make
可以快速构建整个工作空间,但对于大型工程,构建时间可能较长。
2、catkin build:catkin build
是catkin_tools中提供的替代catkin_make
的构建命令。catkin_tools是对catkin
构建系统的增强和扩展,提供了更多的功能和定制选项。使用catkin build
时,它会执行以下步骤:
-
- 并行构建:
catkin build
可以同时构建多个功能包,以加快构建速度。 - 干净构建:每次构建前会自动清理之前的构建结果,以避免潜在的构建问题。
- 定制选项:
catkin build
提供了更多的定制选项,例如选择性构建、设置构建配置文件等。
catkin build
相对于catkin_make
提供了更多的灵活性和功能,特别适用于大型工程。它还可以与其他catkin_tools命令结合使用,例如catkin clean
用于清理构建文件、catkin config
用于配置构建选项等。 - 并行构建:
总而言之,catkin_make
是ROS的默认构建命令,适用于大多数情况。而catkin build
是catkin_tools提供的增强版构建命令,提供更多功能和定制选项,特别适用于大型ROS工程。