Android Studio编译JNI项目,Cmake出错:Detecting C compiler ABI info - failed

本文最后更新于:2023年11月9日 晚上

Android Studio编译JNI项目,Cmake出错:Detecting C compiler ABI info - failed

cmake的定义是什么 ?—–⾼级编译配置⼯具cmake就是将多个cpp、hpp文件组合构建为一个大工程的语言。他能够输出各种各样的makefile或者project文件,所有操作都是通过编译CMakeLists.txt来完成。

在使用Android Stodio编译JNI项目时出现Cmake错误,报错如下:

1
2
3
4
5
6
7
8
9
10
Execution failed for task ':app:configureCMakeDebug[arm64-v8a]'.
> [CXX1429] error when building with cmake using C:\Users\Dell\AndroidStudioProjects\MyApplication2\app\src\main\cpp\CMakeLists.txt: -- Android: Targeting API '31' with architecture 'arm64', ABI 'arm64-v8a', and processor 'aarch64'
-- Android: Selected unified Clang toolchain
-- The C compiler identification is unknown
-- The CXX compiler identification is Clang 12.0.8
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - failed
-- Check for working C compiler: D:/Sdk/ndk/23.1.7779620/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe
-- Check for working C compiler: D:/Sdk/ndk/23.1.7779620/toolchains/llvm/prebuilt/windows-x86_64/bin/clang.exe - broken
-- Configuring incomplete, errors occurred!

在cpp\CMakeLists.txt文件最上方添加后解决问题

会在编译时跳过编译器检查,就不会再出现异常了。

1
2
set(CMAKE_C_COMPILER_WORKS TRUE)
set(CMAKE_CXX_COMPILER_WORKS TRUE)
弱小不是逃避的借口,应是竭尽全力的理由。

Android Studio编译JNI项目,Cmake出错:Detecting C compiler ABI info - failed
http://example.com/2023/08/16/Android Studio编译JNI项目(Cmake出错)/
作者
阿波~
发布于
2023年8月16日
更新于
2023年11月9日
许可协议