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

Android Studio NDK构建失败(提示缺失C编译器)求助

解决Android Studio NDK构建因用户名含空格失败的问题

这个坑我踩过好几次了!核心问题就是你的用户名Julius Debus里有空格,CMake在解析路径时把空格当成了参数分隔符,直接截断了路径——所以它才会去找Debus/AppData/...,而不是完整的Julius Debus/AppData/...目录,自然找不到NDK的头文件,clang编译测试程序也跟着失败了。

给你三个最实用的解决方案,按操作复杂度排序:

方案一:迁移NDK到不含空格的路径(最推荐)

这是一劳永逸的办法,彻底避开路径空格的问题:

  • 先关闭Android Studio,找到当前NDK的默认安装目录:C:\Users\Julius Debus\AppData\Local\Android\Sdk\ndk-bundle
  • 把整个ndk-bundle文件夹复制到一个没有空格的路径,比如C:\Android\Sdk\ndk-bundle或者D:\AndroidNDK
  • 重新打开Android Studio,进入File > Settings > Appearance & Behavior > System Settings > Android SDK,切换到SDK Location标签
  • 在NDK location一栏,点击文件夹图标,选择你刚才迁移到的新路径,点击OK保存
  • 清理项目(Build > Clean Project)后重新构建,应该就能正常编译了

方案二:在CMake配置中强制包裹含空格的路径

如果不想移动NDK,也可以修改CMake的参数,让它正确识别带空格的路径:

  1. 打开项目Module级别的build.gradle文件,找到externalNativeBuild下的cmake配置块,添加带双引号的NDK路径参数:
android {
    defaultConfig {
        // 其他原有配置...
        externalNativeBuild {
            cmake {
                // 用双引号包裹完整的NDK路径,避免空格被解析成分隔符
                arguments "-DANDROID_NDK=\"C:/Users/Julius Debus/AppData/Local/Android/Sdk/ndk-bundle\"",
                          "-DCMAKE_SYSROOT=\"${ANDROID_NDK}/sysroot\""
                // 如果你指定了ABI,也可以保留原有参数
                abiFilters 'armeabi-v7a', 'arm64-v8a'
            }
        }
    }
    // 其他原有配置...
}
  1. 或者直接修改项目根目录的CMakeLists.txt,在设置sysroot和头文件路径时用双引号包裹:
# 确保NDK路径被正确解析
set(ANDROID_NDK "C:/Users/Julius Debus/AppData/Local/Android/Sdk/ndk-bundle")
set(CMAKE_SYSROOT "${ANDROID_NDK}/sysroot")
# 包含头文件时同样用双引号
include_directories("${ANDROID_NDK}/sysroot/usr/include/arm-linux-androideabi")

修改后同步项目(File > Sync Project with Gradle Files),再重新构建即可。

方案三:临时修改构建命令(应急用)

如果只是临时测试,可以在Android Studio的构建配置里给CMake添加参数:

  • 进入Run > Edit Configurations,找到你的Android App配置
  • 在Build标签下的CMake options里,添加:
-DANDROID_NDK="C:/Users/Julius Debus/AppData/Local/Android/Sdk/ndk-bundle"
  • 点击Apply后运行构建,这个方法只对当前配置生效,适合临时调试。

另外提醒一句:以后安装开发工具时,尽量选择不含空格、中文的路径,能避开很多类似的路径解析问题哦~

内容的提问来源于stack exchange,提问作者Julius Debus

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 07:15:45