ARM交叉编译

本文档说明如何在kali linux上配置ARM交叉编译环境,是我们多份关于”定制ARM镜像”的文档的起点.

开发机的配置

编译内核生成镜象通常需要大量硬盘空间.确保你的开发机至少有50G可用硬盘空间以及足够的内存,CPU不要太差.

安装依赖

先安装ARM交叉编译所需的依赖.

apt-get install git-core gnupg flex bison gperf libesd0-dev build-essential 
zip curl libncurses5-dev zlib1g-dev libncurses5-dev gcc-multilib g++-multilib

如果你是64位的Kali Linux系统,用如下命令添加i386架构支持到你的开发环境.

dpkg --add-architecture i386
apt-get update
apt-get install ia32-libs

下载Linaro工具链

从我们的Git源下载Linaro交叉编译器.

cd ~
mkdir -p arm-stuff/kernel/toolchains
cd arm-stuff/kernel/toolchains
git clone git://github.com/offensive-security/arm-eabi-linaro-4.6.2.git

设置环境变量

为了能使用Linaro交叉编译器,你需要在你的session里设置如下的环境变量.

export ARCH=arm
export CROSS_COMPILE=~/arm-stuff/kernel/toolchains/arm-eabi-linaro-4.6.2/bin/arm-eabi-

现在你的ARM交叉编译环境完成了,可以编译属于你自己的ARM内核了.