(1)产生:
之前在学校学校学习的时候,在Linux下习惯通过gcc g++生成makefile来编译文件,但接触了大型项目随着代码量的增多,便接触了更高层次的Cmake工具,加上ROS对Cmake的扩展,便出现了catkin编译工具。
(2)优点:
软件包编译后无需安装就可使用;
自动生成find_package()代码,pkg-config文件;
解决了多个软件包构建顺序问题;
一次配置,多次使用;
(3)编译的工作流程
在工作空间uos/src/下递归查找其中每一个ROS的package
Catkin(CMake)编译系统依据CMakeLists.txt文件,从而生成makefiles(放在catkin_ws/build/)。
然后make刚刚生成的makefiles等文件,编译链接生成可执行文件(放在catkin_ws/devel)。
所以说,Catkin就是将cmake与make指令做了一个封装从而完成整个编译过程的工