用途:该技能面向 Qt 6 项目的 CMake 配置,基于 Qt SDK 开发安装提供的 Qt CMake API,可使用普通 CMake API 不具备的高级功能。适用于生成或更新 Qt 6 CMake 项目、编辑 CMakeLists.txt、添加源文件与资源、定义可执行程序、QML 模块或库目标。
主要能力与规则:使用 Qt 6 命令而非 Qt 5,如 qt_add_executable、qt_add_library、qt_add_qml_module、qt_add_resources、qt_add_plugin、qt_add_translations;在顶层 CMakeLists.txt 首次 find_package(Qt6 ...) 后调用 qt_standard_project_setup();要求显式最低 Qt 版本,如 find_package(Qt6 6.8 REQUIRED COMPONENTS ...);QML 一律使用 qt_add_qml_module(),不把 .qml 文件放进原始 qt_add_resources 或 .qrc;目标链接与包含目录显式使用 PRIVATE/PUBLIC/INTERFACE;不生成 qmake 的 .pro 语法;不手写用于 QML 的 .qrc;C++ 标准设置放在 find_package(Qt6 …) 之前;不手动添加 moc_.cpp、ui_.h、qrc_*.cpp。
使用方式:按项目情况参考 simple-project.md、modular-architecture.md、qml-integration.md、resources.md、configure.md,并在最终输出前用 common-mistakes.md 检查。命令签名不确定时优先查询 Qt 文档 MCP 工具,其次抓取 doc.qt.io 的 CMake 手册与命令页;两者都不可用时按参考模式生成并说明所假设的签名。
适用场景:单目标扁平项目、含 add_subdirectory() 的模块化项目、多目标/库/插件、QML 模块与 C++ 集成、图片图标字体翻译等静态资源管理、项目配置与构建。
限制:不编造用户未要求的额外目标、安装规则、打包或测试脚手架;编辑现有文件时保留风格,但违反硬规则的缺陷需最小化迁移并简短说明;不生成 .pro 文件,若用户要求两种构建系统应询问选择哪一种。