- 使用macos的命令行运行
- 直接运行编译出的是armv7-a架构的
- 如需要armv8(aarch64)的需要 修改PLATFORM和ANDROID_CROSS_PREFIX以及ARCH三项
根据自己的要求变更PREFIX,这个为编译后文件输出目录
#!/bin/bash
#Android System API Level,你要运行在什么系统上,就填写系统API Level
#但是这个API Level必须要能够在NDK中找得到,详见下面的ANDROID_CROSS_PREFIX
API_LEVEL=21
#设置ndk目录
NDK=/Users/zhaowenxiao/Library/Android/sdk/ndk/21.0.6113669
#llvm toolchain路径。linux下是linux-x86_64,windows下则是windows开头的。
TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/darwin-x86_64
#sysroot 这个一定要设置成 ndk的llvm 路径下的 sysroot
#这里有个坑要注意,sysroot文件夹在r19c后才存在,r18b中是没有的!
SYSROOT=$TOOLCHAIN/sysroot
#ar nm 的prefix。这里一定要保证和编译的系统位数保持一致
# for aarch64
#PLATFORM=aarch64-linux-android
# for armv7
PLATFORM=arm-linux-androideabi
#ASM 路径, 同上必须是llvm 目录下的 asm
#说实话,我不知道为啥要ASM。。
ASM=$SYSROOT/usr/include/$PLATFORM
#完整的 cross prefix
CROSS_PREFIX=$TOOLCHAIN/bin/$PLATFORM-
#专门给ndk clang/clang+