Android Studio是否内置CMake?Gradle同步提示CMake版本过低如何解决
核心结论
CMake 不是 Android Studio 主程序的内置捆绑组件,它是 Android Gradle 插件构建原生代码所需的SDK配套工具,由 Android Studio 集成的 SDK Manager 统一分发管理,默认存放在本地 Android SDK 目录的 cmake/ 子文件夹下,和你系统里自行安装、加入PATH环境变量的CMake是完全独立的两套文件。这也是你卸载自行安装的CMake、甚至移除命令行环境下的CMake后,报错依然存在的根本原因——Gradle 同步时默认优先查找SDK目录下的CMake,完全不依赖系统全局安装的版本。
你看到的版本过低报错,本质是项目配置要求的最低CMake版本,高于当前SDK目录下已安装的CMake版本。
修复步骤
- 打开SDK Manager:可以通过顶部菜单栏依次点击
Tools > SDK Manager进入,也可以直接点击报错提示条上的安装快捷入口跳转。 - 显示详细版本列表:切换到 SDK Tools 标签页,勾选页面右下角的
Show Package Details复选框,展开CMake条目,就能看到所有可下载的版本,以及当前SDK中已经安装的旧版本。 - 安装符合要求的版本:勾选报错提示中要求的最低版本及以上的CMake稳定版(和主流Android Gradle插件兼容性较好的版本为3.18.1、3.22.1),点击
Apply等待自动下载安装完成。 - 配置校验(安装后仍报错时操作):打开模块级的
build.gradle(新版AGP对应为build.gradle.kts)文件,找到externalNativeBuild.cmake配置块,确认version字段填写的版本号和你刚安装的CMake版本完全一致,参考配置如下:
android { // ...其他配置 externalNativeBuild { cmake { path file('src/main/cpp/CMakeLists.txt') version '3.22.1' // 此处版本号需和SDK中安装的CMake版本匹配 } } }
- 重新执行Gradle Sync即可完成同步。
常见注意点:如果你的项目配置了自定义SDK路径,先确认
local.properties文件中sdk.dir指向的路径,和SDK Manager中安装CMake的SDK路径一致,避免把CMake装到其他SDK目录导致识别失败。


内容的提问来源于stack exchange,提问作者xarzu
相关产品推荐
相关产品推荐

