一、CMake 简介
CMake 是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。它能够输出各种各样的makefile 或者 project 文件,能测试编译器所支持的C++ 特性,类似 UNIX 下的 automake 。只是 CMake 的组态组态档取名为 CMakeLists.txt。 CMake 并不直接建构出最终的软件,而是产生标准的建构档(如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces),然后再依一般的建构方式使用。
cmake特点:
1. 开发源代码。http://cmake.org/HTML/Copyright.html
2. 跨平台,并可生成 native 编译配置文件,在 Liunx/Unix 平台,生成 makefile;在苹果平台,可以生成 xcode,在Windows 平台,可以生成 MSVC 的工程文件。
3. 能够管理大型项目, KDE4 就是最好的证明。
4. 简化编译构建过程和编译过程。 CMake 的工具链非常简单: cmake + make。
5. 高效率,按照 KDE 官方说法,CMake 构建 KDE4 的 kdelibs 要比使用 autotools 来构建 KDE3.5.6 的 kdelibs 快 40%,主要是因为 CMake 在工具链中没有 libtool
6. 可扩展,可以为 cmake 编写特定功能的模块,扩充 cmake 功能
在 linux 平台下使用 CMake 生成 Makefile 并编译的流程如下:
1. 编写 CMake 配置文件 CMakeLists.txt
2. 执行命令 cmake PATH 或者 ccmake PATH 生成 Makefile。 其中 PATH 是 CMakeLists.txt 所在的目录
3. 使用 make 命令进行编译