Introduction
Last updated
Was this helpful?
Last updated
Was this helpful?
作者:Craig Scott
译者:陈晓伟
Version: 1.0.3
翻译是译者用自己的思想,换一种语言,对原作者想法的重新阐释。鉴于我的学识所限,误解和错译在所难免。如果你能买到本书的原版,且有能力阅读英文,请直接去读原文。因为与之相较,我的译文可能根本不值得一读。
— 云风,程序员修炼之道第2版译者
CMake是非常流行的工具,用于构建、测试和打包项目。因成熟性、特性多、平台支持性广和工具链灵活的特点,使得在开发社区中得以广泛使用。近年来,3.x系列带来了更多强大的功能,也产生了现代CMake这一术语。本书主要为开发人员提供最新、最实用的CMake指南,并且关注实践。作为CMake教程,遵循从基本概念到高级主题的逻辑顺序。对于有经验的读者,可以直接去看自己感兴趣的部分。
本书第一部分介绍了CMake的基本部分,为了让读者快速上手,以实践了解项目,然后在可管理和结构化的单元中,逐步建立对CMake概念的理解。这里不仅呈现了关键的概念,也让读者对如何有效地使用CMake,以及如何避免常见问题有所了解。
本书的中间部分更详细地介绍了各个关键部分,不过更侧重于任务。许多案例解决了开发人员经常面临的问题,而且这些章节覆盖了很多3.x中新加入或改进的特性。有些章节会更深入的讨论CMake,诸如如何构建库、管理跨平台版本,以及与Apple平台相关的技术,如包、框架和签名等。展示了开发人员如何最大限度地利用CMake的特点。并对一些常见但不推荐的方式进行介绍,解释为什么这些方式不推荐,应该如何避免。
本书的最后一部分,读者的关注点需要扩展到项目之外,从不同的角度来看待项目。管理项目间依赖关系是开发人员面临的困难之一,最后的章节将直接进行讨论。读者们可以了解依赖关系和将项目供他人使用的方法,并讨论如何准备各种格式的软件包,以及如何遵循平台约定。还有,对可测试性的深入理解,会让开发人员对其项目更有信心。这一章专注于项目组织,汇集了许多早期案例,演示了如何构建一个CMake项目来提高可维护性,使日常开发更加方便,缩短了新开发人员融入项目的时间。有一章会专门讨论构建性能,以及减少构建时间的各种工具和技术。最后一章会对Qt的支持进行介绍,会讨论CMake和Qt提供的特性,涵盖了moc
、uic
和rcc
支持、翻译处理和Qt部署工具使用等主题。
github翻译地址:
英文原版PDF:
本书最新版本获取地址: