当我构建代码时,虽然我的计算机上有$(NDK)\toolchains\arm-linux-androideabi-4.6
,但我看到正在使用$(NDK)\toolchains\arm-linux-androideabi-4.8
。
我的理解是应该始终使用最新的androideabi,以便可以使用最新的gcc编译器。我想知道为什么ndk-build
正在使用旧版本。
以下是我的Application.mk供您参考:
APP_ABI := armeabi-v7a
APP_PLATFORM := android-16
APP_OPTIM := release
APP_STL := gnustl_static
APP_CPPFLAGS := -std=gnu++11
APP_PLATFORM
的值必须是android-16才能支持Android操作系统4.1及更高版本。我想知道androideabi是否与APP_PLATFORM
值挂钩。
答案 0 :(得分:1)
问题不在于ABI,而在于工具链版本。
您可以在Android.mk中控制此内容
从其文件中:
NDK_TOOLCHAIN_VERSION
将此变量定义为4.6,4.7或4.8以选择GCC编译器的版本。 4.6是默认的