搭建Android x86_64及arm64-v8a操作步骤



现在android的设备使用64位的cpu已经开始普遍了,所以有必要针对64位的cpu在ndk编译上做一些支持。

下面这篇文章转载自:

http://blog.csdn.net/fengbingchun/article/details/44491763


1.        从https://developer.android.com/tools/sdk/ndk/index.html下载android-ndk-r10d-windows-x86_64.exe 和 android-ndk-r10d-linux-x86_64.bin;

2.        在Ubuntu1404 64位中通过终端安装ndkr10d:./android-ndk-r10d-linux-x86_64.bin ;

3.        通过命令sudo  vi  /etc/profile,打开profile文件,在此文件最后加入

  1. export NDKROOT=/home/spring/ndk/android-ndk-r10d  
  2. export PATH=$NDKROOT:$PATH  
  3. export NDKBIN=/home/spring/ndk/android-ndk-r10d/toolchains/aarch64-linux-android-4.9/prebuilt/linux-86_64/bin  
export NDKROOT=/home/spring/ndk/android-ndk-r10d
export PATH=$NDKROOT:$PATH
export NDKBIN=/home/spring/ndk/android-ndk-r10d/toolchains/aarch64-linux-android-4.9/prebuilt/linux-86_64/bin

4.        重启ubuntu,输入ndk-build,显示android ndk等相关信息,说明配置NDK成功;

5.        在windows上安装android-ndk-r10d-windows-x86_64.exe,安装到D:/ProgramFiles/Android/android-sdk/目录下;

6.        通过SDK Manager.exe下载5.0.1或5.1 SDK;

7.        在windows下需要修改Cygwin中/.bash_profile配置,添加ndkr10d路径:

  1. ANDROID_NDK_ROOT=/cygdrive/d/ProgramFiles/Android/android-sdk/android-ndk-r10d  
  2. PATH=/cygdrive/d/ProgramFiles/Android/android-sdk/android-ndk-r10d:/cygdrive/d/Soft/Java/eclipse/plugins/org.apache.ant_1.8.4.v201303080030/bin:$PATH  
ANDROID_NDK_ROOT=/cygdrive/d/ProgramFiles/Android/android-sdk/android-ndk-r10d
PATH=/cygdrive/d/ProgramFiles/Android/android-sdk/android-ndk-r10d:/cygdrive/d/Soft/Java/eclipse/plugins/org.apache.ant_1.8.4.v201303080030/bin:$PATH

8.        若编译x86_64,则需将Application.mk中的APP_ABI赋值为:APP_ABI := x86_64

9.        若编译armv8-a,则需将Application.mk中的APP_ABI赋值为:APP_ABI := arm64-v8a

10.    其它基础操作步骤可以参考:(1)、http://blog.csdn.net/fengbingchun/article/details/10439281 ; (2)、http://blog.csdn.net/fengbingchun/article/details/11580983 ; (3)、http://blog.csdn.net/fengbingchun/article/details/38798023 ;

11.    APP_ABI目前能取得值包括:(1)、32位:armeabi、armeabi-v7a、x86、mips;(2)、64位:arm64-v8a,x86_64, mips64;

12.  注意事项:(1)、目前模拟器只有x86_64的没有arm64-v8a的;(2)、在用真机测试armv8-a时,最好先通过adb shell, cat  /proc/cpuinfo ,来查看下真机是否是支持armv8-a;(3)、arm32和arm64有些配置参数不能共存,如-msoft-float仅在arm32位下支持,在arm64位下是不支持的.

13.使用这个命令可以获得本机的arch:adb shell getprop ro.product.cpu.abi

你可能感兴趣的:(Android)