第1章:介绍
Last updated
Last updated
无论是经验丰富的开发人员,还是刚开始从事开发工作的菜鸟,对工具的使用都需要一个熟悉的过程,以便将项目的源代码转化为用户可以使用的东西。编译器、链接器、测试框架、打包系统等都保证了部署的质量、软件的健壮性。虽然有些平台有主流的IDE(例如:Xcode和Visual Studio)可以简化一些操作,但需要支持多个平台的项目不能总使用IDE。多个平台的支持增加了软件的复杂性,可能会影响到从工具集到功能的行为。所以开发人员在试图掌握全局的过程中,有时处于失控状态,这也是可以理解的。
有一些工具可以使这个过程更容易管理。CMake就是这样的工具,或者说CMake是一套工具,涵盖了从创建构建到生产,以及发布的一切操作。不仅涵盖了从头到尾的流程,还有广泛的平台、工具和语言支持。使用CMake时,了解它的世界观对使用非常有帮助。简单的说,CMake从开始到结束的过程看起来如下图所示:
第一阶段需要对项目进行描述,并生成特定于平台的项目文件,这些文件与开发人员选择的构建工具(例如make、Xcode、Visual Studio等)适配。这是CMake有名的设置阶段,CMake工具套件还包括CTest和CPack,分别用于管理测试和打包。从开始到结束的整个过程可以由CMake驱动,测试和打包步骤可以简单地作为构建中的附加目标,CMake可以调用构建工具。
开始使用CMake之前,开发人员需要确保CMake已经安装。有些平台会自带CMake(大多数Linux发行版都通过包管理器提供了CMake),但是其版本通常相对过旧,建议开发人员使用最新的CMake版本。特别是在为Apple平台开发时,Xcode和SDK等工具更新的频率特别高,应用商店的需求会随着时间而变化。官方的CMake包可以下载并解压缩到目录中,从而不会影响任何系统范围的CMake安装。我们鼓励开发人员利用这一点,使用(相对稳定的)发行版CMake。
CMake提供了相应的参考文档 ,可以从CMake官方网站获取。参考文档对于查找各种命令、选项、关键字等非常有帮助,开发人员可以将其添加为书签,以便需要时快速参考。CMake用户邮件列表也是好建议来源,可用于在文档没有提供足够指导的情况下询问与CMake相关的问题。