Ответ 1
В ваших файлах *.mk есть несколько ошибок:
libc++_static
не является правильным значением для APP_STL, здесь должно быть c++_static
.
NDK_TOOLCHAIN_VERSION
не действует при установке в Android.mk, он должен быть установлен внутри Application.mk
LOCAL_CLANG
- это переменная, используемая внутри системных модулей от AOSP, а не при использовании NDK.
Поскольку вы устанавливаете APP_STL как c++_static
, инструментальная цепочка NDK правильно сообщит компоновщику, что использовать lib, вы не должны добавлять LOCAL_LDLIBS := -lc++_static
.
Кроме того, вы устанавливаете APP_ABI
только в armeabi-v7a, это специально? Android работает и на других архитектурах, и вы получите лучшую производительность, если вы также скомпилируете свои библиотеки. Вы можете установить APP_ABI
в all
или в список архитектур armeabi-v7a x86
...
Вкратце:
Android.mk
LOCAL_CFLAGS := -std=c++11
Application.mk
NDK_TOOLCHAIN_VERSION := clang
APP_PLATFORM := android-9
APP_STL := c++_static
APP_CPPFLAGS := -fexceptions -frtti
APP_ABI := all
Если у вас есть некоторые проблемы с компиляцией кода, пожалуйста, покажите точные ошибки, которые вы получаете.