我正尝试在我的 Archlinux 中为我的 Qt android 项目构建 QPSQL 驱动程序,但它经常失败
configure: error: C preprocessor "/opt/AndroidSDK/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-cpp" fails sanity check
所以我尝试了简单的 hello World 程序:-
% /opt/AndroidSDK/ndk-bundle/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-cpp t.c
# 1 "t.c"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "t.c"
t.c:1:19: fatal error: stdio.h: No such file or directory
#include <stdio.h>
^
compilation terminated.
这意味着 arm-linux-androideabi-cpp 预处理器不工作,对吗? 但我在 Qt Creator 和 Android Studio 中的其他项目构建和运行良好
我该怎么办?我尝试将 NDK 更新到 18,结果很糟糕,因为他们用 clang 替换了 gcc。所以我有 r17b 和最新的 android SDK。
最佳答案
如果不传递一大堆标志将它们指向 sysroot,则无法调用 $NDK/toolchains
中的工具(启用此类用例是 r19 功能)。
使用https://developer.android.com/ndk/guides/standalone_toolchain为这种用途配置工具链。
关于android NDK fatal error : stdio. h : No such file or directory #include <stdio. h>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52523080/