这个问题的根本原因是缺少NDK的ARM64交叉编译器,需要手动下载并安装。具体步骤如下:
curl https://developer.android.com/ndk/downloads | grep "macosx.*-android-ndk-r" | grep "aarch64" | awk '{print $4}' | sed 's/href="//' | sed 's/"$//'
然后在浏览器中打开上面得到的链接,下载对应的ARM64编译器(例如,下载的文件名可能为:android-ndk-r21e-darwin-arm64.zip)。
unzip android-ndk-r21e-darwin-arm64.zip
cp -r android-ndk-r21e-darwin-arm64/bin ~/Library/Android/sdk/ndk/21.1.6352462/
cp -r android-ndk-r21e-darwin-arm64/lib ~/Library/Android/sdk/ndk/21.1.6352462/
ndk-build APP_ABI=arm64-v8a
等编译完成后,你的应用程序就可以在Apple Silicon M1上运行了。