2 构建ARM Linux 交叉编译工具链 构建交叉编译器的第一个步骤就是确定目标平台
在 GNU系统中,每个目标平台都有一个明确的格式,这些信息用于在构建过程中识别要使用的不同工具的正确版本
因此,当在一个特定目标机下运行 GCC时,GCC便在目录路径中查找包含该目标规范的应用程序路径
GNU的目标规范格式为 CPU-PLATFORM-OS
例如 x86/i386 目标机名为 i686-pc-linux-gnu
本章的目的是讲述建立基于 ARM平台的交叉工具链,所以目标平台名为 arm-linux-gnu
通常构建交叉工具链有 3种方法
方法一 分步编译和安装交叉编译工具链所需要的库和源代码,最终生成交叉编译工具链
该方法相对比较困难,适合想深入学习构建交叉工具链的读者
如果只是想使用交叉工具链,建议使用方法二或方法三构建交叉工具链
方法二 通过 Crosstool脚本工具来实现一次编译生成交叉编译工具链,该方法相对于方法一要简单许多,并且出错的机会也非常少,建议大多数情况下使用该方法构建交叉编译工具链
方法三 直接通过网上(ftp
kernel
uk)下载已经制作好的交叉编译工具链
该方法的优点不用多说,当然是简单省事,但与此同时该方法有一定的弊端就是局限性太大,因为毕竟是别人构建好的,也就是固定的没有灵活性,所以构建所用的库以及编译器的版本也许并不适合你要编译的程序,同时也许会在使用时出现许多莫名的错误,建议读者慎用此方法
为了让读者真正的学习交叉编译工具链的构建,下面将重点详细地介绍前两种构建ARM Linux交叉编译工具链的方法
1 分步构建交叉编译链 分步构建,顾名思义就是一步一步地建立交叉编译链,不同于 2
2节中讲述的Crosstool脚本工具一次编译生成的方法,该方法适合那些希望深入学习了解构建交叉编译工具链的读