android NDK fatal error : stdio. h : No such file or directory #include <stdio. h>

标签 android c qt android-ndk c-preprocessor

我正尝试在我的 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/

相关文章:

java - ical解析器android

android - “getActionId overrides nothing” 升级到导航版本 2.4.0-alpha02 后

java - 返回 jsoup 中 div 之间的文本

安卓 : Cardview Background is turning to black on 4. 1.2

c++ - 机器精度

c - main() 包装器启动 main() 程序以从命令行编译它

c - 在 C 中使用 fgets 的段错误

android - QML 中的多页应用程序

C++ 在静态函数中使用非静态变量返回类实例

c++ - 如何隐藏 QSplitter 小部件中的句柄?