「CMake」跨平台工程构建工具
    cross platform make。起初为了跨平台需求,而后不断完善的并广泛使用的一款工程构建工具

    (1)特点及优势

    1. 开放源代码,具有BSD许可
    2. 跨平台,支持Linux、Mac和Windows等不同操作系统
    3. 编程语言简单,易用,简化编译构建过程和编译过程
    4. 编程高效(比autotools快40%),可扩展(ros中catkin、ament、colcon都是基于cmake构建)

    (2)使用cmake,要面临哪些问题?

    1. 如何去组织一个项目的编译框架
    2. 最终输出的目标有哪些(可执行程序、动态库、静态库)
    3. 如何配置输出目标文件的指定编译参数(需要哪些编译参数及环境,需要哪些源文件)
    4. 如何为指定的输出目标链接参数(怎么配置内外部依赖的pkg和lib,怎么链接外部库)

    相关资料:

    1. 官方主页Wiki
    2. 官方文档中文
    3. cmake源代码仓库

    推荐示例与文章:

    1. 示例(入门CMake,看这个仓库就可以了)
    2. 现代CMake
    3. 精选的cmake资料

    [

    ](http://www.youtube.com/watch?v=CLvZTyji_Uw)