You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级Android Studio NDK后构建失败:CMAKE_C/CXX_COMPILER未设置求助

解决Android Studio NDK更新后CMake构建错误的方案

我之前处理过好几起类似的NDK更新后CMake构建失败的问题,结合经验给你几个靠谱的解决方向:

1. 排查NDK与CMake的版本兼容性

你当前用的CMake版本是3.6.4111459,这个版本偏老,大概率和你更新后的NDK不兼容——不同版本的NDK对CMake的版本有明确要求。可以这么操作:

  • 打开Android Studio的设置(Windows:File > Settings;Mac:Android Studio > Settings)
  • 进入Build, Execution, Deployment > Build Tools > CMake,查看已安装的CMake版本,尝试切换到3.10及以上的版本(这类版本适配多数较新NDK)
  • 如果没有合适的版本,点击+号安装一个兼容的CMake版本

2. 手动指定稳定NDK版本

最新版NDK偶尔会引入兼容性问题,不如直接锁定一个经过验证的稳定版本:

  • 打开项目根目录的local.properties文件,添加或修改ndk.dir字段,指定一个已知可用的NDK路径,比如:
    ndk.dir=C:\\Users\\AnimallTag\\AppData\\Local\\Android\\sdk\\ndk\\21.4.7075529
    
  • 或者在Module级的build.gradle中直接指定NDK版本:
    android {
        ndkVersion "21.4.7075529"
    }
    
    21.x系列的NDK是很多项目验证过的稳定版本,兼容性很强。

3. 清理缓存并重新构建

缓存损坏也可能导致这类找不到编译器的错误,先清理试试:

  • 点击Android Studio工具栏的Build > Clean Project
  • 接着点击Build > Rebuild Project
  • 可以手动删除app目录下的.externalNativeBuild文件夹,然后点击File > Sync Project with Gradle Files重新同步项目

4. 直接降级NDK到兼容版本

如果上面的方法都没效果,直接降级NDK是最直接的方案:

  • 打开Android Studio的SDK Manager(Tools > SDK Manager)
  • 切换到SDK Tools标签,勾选Show Package Details
  • 找到NDK (Side by side),展开后选择一个旧版本(比如21.x系列),点击Apply完成安装
  • 安装后按照步骤2的方法,在项目中指定这个旧版本的NDK路径

5. 检查CMakeLists.txt配置

最后确认下你的CMakeLists.txt没有配置错误,比如是否正确声明了库和依赖,示例配置如下:

cmake_minimum_required(VERSION 3.4.1)

# 构建你的C++库
add_library(
             native-lib
             SHARED
             src/main/cpp/你的C++文件名.cpp
           )

# 链接NDK自带的log库
find_library(
              log-lib
              log
            )

target_link_libraries(
                       native-lib
                       ${log-lib}
                     )

内容的提问来源于stack exchange,提问作者Nathan Imamura

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 06:19:06