Заголовки NDK в $ (NDK_ROOT) / platform / android- [X] / usr / include являются единственными заголовками, поддерживаемыми NDK. Если вы используете другие заголовки Android или Linux, ваше приложение может сломаться в будущем.
Почему это? Поскольку большинство приложений для Android работают на виртуальной машине Dalvik и изолированы от системы слоями классов инфраструктуры Java, авторы Android могут позволить себе быть достаточно внимательными к базовой системе Linux. Они могут изменять заголовки и библиотеки так часто, как хотят, если они поддерживают совместимость уровня Java. То же самое относится и к NDK: если они не нарушают очень ограниченный набор заголовков и библиотек, которые предоставляет NDK, они могут изменять все, что хотят изменить, под капотом.
Таким образом, система NDK make не позволяет легко связать что-либо, кроме библиотек NDK. Если бы это облегчало общение со случайными заголовками Linux, это побеждало бы назначение NDK.