Android NDK自定义交叉编译工具链
2017-12-19 14:41
417 查看
简书排版
http://www.jianshu.com/p/3bbad4b1b099
首先上官方文档
https://developer.android.com/ndk/guides/standalone_toolchain.html
可以自定义工具链进行交叉编译
1.对不同的指令集APP_ABI设置
2.工具链和相应的值,使用–arch
3.工具链和相应的值,使用–toolchain
主机工具链和相应的值,使用-system
自定义
2
3
上面演示的仅仅是单一的arm工具链
可以根据自己的需要独立配置
不过相应的arch和对应的toolchain要对应
可以写个Shell脚本处理make_toolchain.sh
在开头配置好相应的路径,和platform即可
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
运行
交叉编译的工具链配置完成,方便后续进行交叉编译
http://www.jianshu.com/p/3bbad4b1b099
本机OS: Ubuntu 14.04 x641
首先上官方文档
https://developer.android.com/ndk/guides/standalone_toolchain.html
可以自定义工具链进行交叉编译
1.对不同的指令集APP_ABI设置
Architecture | Toolchain name |
---|---|
ARM-based | arm-linux-androideabi-<gcc-version> |
x86-based | x86-<gcc-version> |
MIPS-based | mipsel-linux-android-<gcc-version> |
ARM64-based | aarch64-linux-android-<gcc-version> |
X86-64-based | x86_64-<gcc-version> |
MIPS64-based | mips64el-linux-android--<gcc-version> |
Toolchain | Value |
---|---|
mips64 compiler | --arch=mips64 |
mips GCC 4.8 compiler | --arch=mips |
x86 GCC 4.8 compiler | --arch=x86 |
x86_64 GCC 4.8 compiler | --arch=x86_64 |
mips GCC 4.8 compiler | --arch=mips |
Toolchain | Value |
---|---|
arm | --toolchain=arm-linux-androideabi-4.8 |
arm | --toolchain=arm-linux-androideabi-4.9 |
arm | --toolchain=arm-linux-android-clang3.5 |
arm | --toolchain=arm-linux-android-clang3.6 |
x86 | --toolchain=x86-linux-android-4.8 |
x86 | --toolchain=x86-linux-android-4.9 |
x86 | --toolchain=x86-linux-android-clang3.5 |
x86 | --toolchain=x86-linux-android-clang3.6 |
mips | --toolchain=mips-linux-android-4.8 |
mips | --toolchain=mips-linux-android-4.9 |
mips | --toolchain=mips-linux-android-clang3.5 |
mips | --toolchain=mips-linux-android-clang3.6 |
arm64 | --toolchain=aarch64-linux-android-4.9 |
arm64 | --toolchain=aarch64-linux-android-clang3.5 |
arm64 | --toolchain=aarch64-linux-android-clang3.6 |
x86_64 | --toolchain=x86_64-linux-android-4.9 |
x86_64 | --toolchain=x86_64-linux-android-clang3.5 |
x86_64 | --toolchain=x86_64-linux-android-clang3.6 |
mips64 | --toolchain=mips64el-linux-android-4.9 |
mips64 | --toolchain=mips64el-linux-android-clang3.5 |
mips64 | --toolchain=mips64el-linux-android-clang3.6 |
Host toolchain | Value |
---|---|
64-bit Linux | -system=linux-x86_64 |
64-bit MacOSX | -system=darwin-x86_64 |
64-bit Windows | -system=windows-x86_64 |
#NDK_HOME为安装路径 export NDK_HOME=/workspace/android-ndk-r10e $NDK_HOME/build/tools/make-standalone-toolchain.sh --arch=arm --platform=android-21 --install-dir=$HOME/android-toolchain --toolchain=arm-linux-androideabi-4.91
2
3
上面演示的仅仅是单一的arm工具链
可以根据自己的需要独立配置
不过相应的arch和对应的toolchain要对应
可以写个Shell脚本处理make_toolchain.sh
在开头配置好相应的路径,和platform即可
export NDK_HOME=/workspace/android-ndk-r10e platform=android-21 shmake=$NDK_HOME/build/tools/make-standalone-toolchain.sh archs=( 'arm' 'arm64' 'x86' 'x86_64' 'mips' 'mips64' ) toolchains=( 'arm-linux-androideabi-4.9' 'aarch64-linux-android-4.9' 'x86-4.9' 'x86_64-4.9' 'mipsel-linux-android-4.9' 'mips64el-linux-android-4.9' ) echo $NDK_HOME num=${#archs[@]} for ((i=0;i<$num;i++)) do sh $shmake --arch=${archs[i]} --platform=$platform --install-dir=$HOME/android-toolchain/${archs[i]} --toolchain=${toolchains[i]} done1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
运行
sh make_toolchain.sh1
交叉编译的工具链配置完成,方便后续进行交叉编译
相关文章推荐
- Android NDK 提供的交叉工具链手动编译源码
- NDK交叉编译之自定义工具链
- Android逆向基础笔记—Android NDK开发2之Windows下的gcc手动编译(交叉连编译)和利Linux Ubuntu系统下的交叉工具链手动编译
- Android NDK 提供的交叉工具链手动编译源码
- Android NDK 提供的交叉工具链手动编译源码
- 用Crossdev安装MIPS交叉编译工具链
- arm-linux交叉编译工具链的制作(基于S3C2440)【转】
- EasyARM-iMX283A 安装交叉编译工具链
- ARM交叉编译工具链的制作
- 利用crosstools-ng编译自己的交叉工具链
- 交叉编译工具链的配置与测试
- 交叉编译工具链的安装、配置、使用
- 二。安装交叉编译工具链
- 交叉编译工具链
- openwrt环境搭建与交叉编译,并教你生成自定义镜像
- [cocos2d-x 学习] 第一个cocos2d-x win32程序和Android NDK交叉编译
- 使用 Android NDK 的交叉编译工具链移植 C/C++ 项目到安卓平台
- ARM-Linux交叉编译工具链的建立
- 制作交叉编译工具链的方法总结(详细)
- Linux 下安装 Blackfin 交叉编译工具链