首页 新闻资讯内容详情

CMake 4.4 主版本推出,诊断系统与 Presets 能力成为核心变化

2026-08-06 4 暗号导航联盟

CMake 4.4 正式推出, 这是一回涵盖诊断、配置管理以及工具链的深度更新, 新版引入全新的诊断系统, 其支持自定义配置文件, File - Based API 提升到 2.11 版本, 并且对 Ninja 和 CUDA 等关键工具链进行了优化。

全新诊断系统上线

在 CMake 4.4 当中, 导入了全新的诊断框架, 得以借助新增的 diagnostic() 命令, 达成更为精细的诊断分类管理。对于开发者而言, 可以依据类别去过滤警告以及错误, 而不再依靠分散的命令行参数。这样的一套机制, 使得项目级、用户级以及 CI 环境里的诊断策略变得更加统一。

以往, 诊断功能分散存于多个变量以及选项之中, 而新系统把它们整合至统一框架里, 如此一来, 开发者能够更加条理清晰地追踪问题出处, 进而减少误报所带来的干扰。

自定义配置文件支持

CMake 4.4 起, 对配置文件 v12 予以支持, cmake 工具增添了 ---file 参数, ctest 工具添加了 ---file 参数, cpack 工具也加入了 ---file 参数, 此功能准许从指定文件去加载配置, 不再限定于默认的 CMakePresets.json 或者 CMakeUserPresets.json。

就大型项目而言, 此改动颇具价值, 单仓多项目亦是如此, SDK 工程同样如此, 企业模板亦是这般。不同构建场景之下, 能运用更明晰的配置文件, 进而提升项目管理效率。

File-Based API 升级

CMake 4.4 主版本推出,诊断系统与 Presets 能力成为核心变化__CMake 4.4 主版本推出,诊断系统与 Presets 能力成为核心变化

基于文件的应用程序编程接口已更新至二点一一版本, 进而为集成开发环境、编辑器以及工具链集成提供更深入服务。CTest数据版本同步提升至一点一, 能够支持捕获命令输出以及编译跟踪文件。

对于那些构建性能分析、CI诊断以及工具链可观测性而言, 这些增强功能均具备一定的辅助作用,借由这些增强功能, 开发者能够实现对慢构建的精准定位, 能够实现对配置异常情况的精准定位, 还能够实现对测试瓶颈的精准定位。

Ninja 生成器优化

CMake 4.4, 针对 Ninja 生成器, 做出了多项改进之举措, 其中涵盖增强测试准备目标的支持这一方面。这些基于此而有的优化设置, 使得 Ninja 在现代构建流程当下的表现, 变得更加稳定且高效。

CUDA 和安装功能增强

支持CUDA C++23标准的新版, 改进了cmake --install的并行安装能力, 改进了cmake --install的多组件安装能力, 这些更新使得跨平台构建变得更加灵活。

CPack 打包能力提升

CPack 同样增添了多个命令选项以及模块能力, 使得打包流程变得更为完善。从整体去看, CMake 4.4 针对现代构建系统的管理、诊断、自动化以及工具集成展开了全面的升级。

做开发工作的那些人, 在他们所进行的各种各样的项目里, 会不会运用CMake 4.4出现的那些全新的特性呢, 欢迎来到评论区域, 把你的想法见解分享出来。

相关标签: # CMake # 版本更新 # 诊断系统 # Presets # 功能增强