我正在尝试为Android 64位平台生成64位本机代码,但我无法生成它,即使在成功编译后生成的本机代码显示32位(" ELF 32位LSB可执行文件) ,ARM,版本1(SYSV),动态链接(使用共享库),而不是剥离")。
我用过#34; arm-linux-androideabi - "来自NDK r9 x86_64的工具链。 如果有人解释我应该做什么来为64位Android生成本机代码,或者无法生成64位代码,我将不胜感激。
谢谢,
答案 0 :(得分:0)
用NDK r9编译64位臂并不容易。 NDK r10具有用于64位ARM的预构建工具链。如果您下载NDK r10并查看/ toolchains目录,您将看到:
aarch64-Linux的机器人-4.9 aarch64-Linux的Android的clang3.4 aarch64-Linux的机器人-clang3.5
这些是gcc和clang 3.4和3.5,分别是用于构建64位ARM的工具链。
您可以从通常的分发点下载新的工具链,它位于: https://developer.android.com/tools/sdk/ndk/index.html
答案 1 :(得分:0)
您需要使用r10中的arm64工具链。手臂工具链是严格的32位手臂。