ndk-build 碎片知识
手动编译:
命令行运行ndk-build
什么参数都没有,就默认找jni/Application.mk
指定变量:
ndk-build -e NDK_APPLICATION_MK=Application.mk
以上手动指定了Application.mk的位置
其他有用的变量:
APP_PLATFORM := android-19 指定使用api19编译。如果编译不通过,使用-d参数 查看,发现include的api版本太老,就用这个指定
APP_BUILD_SCRIPT:=Android.mk 指定Android.mk的路径
APP_ABI := armeabi arm64-v8a armeabi-v7a mips mips64 x86 x86_64 或 APP_API := all 指定编译所有架构
关于sdk版本:
NDK有许多sdk版本,它们和安卓的javasdk里的各种版本数字编号含义是一样的。因此,sdkversion这个提法不仅仅适用于java,也可以适用于NDK。
NDK版本号最好等于minsdkversion,因为某个版本的ndk会调用该版本的javasdk中的函数,如果遇到没有的就挂了。
64位arm的库从platform-21加入,如果编译使用的版本号低于这个,当编译64位时会自动使用这个版本号