фатальная ошибка android NDK: stdio.h: нет такого файла или каталога #include - PullRequest
0 голосов
/ 26 сентября 2018

Я пытаюсь собрать драйвер QPSQL для моего проекта Qt android в моем Archlinux, который постоянно терпит неудачу

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.

Thisозначает, что препроцессор arm-linux-androideabi-cpp не работает, верно?Но другие мои проекты из Qt Creator и Android Studio собирают и работают нормально

Что мне делать?Я попытался обновить NDK до 18, что закончилось ужасно, поскольку они заменили gcc на clang.Так что у меня r17b и последняя версия Android SDK.

1 Ответ

0 голосов
/ 26 сентября 2018

Вы не можете вызывать инструменты в $NDK/toolchains, не передав целую кучу флагов, чтобы указать их на системный корень (включение такого варианта использования - функция r19).

Использование https://developer.android.com/ndk/guides/standalone_toolchain для настройки цепочки инструментов для такого рода использования.

...