1.1 系统移植简介
在正式开始一直前,首先要明白什么系统移植,知其然还要知其所以然,对于嵌入式的学习方法,我认为都是大同小异的:从宏观上把握(解决为什么的问题),微观上研究(解决正在做什么的问题)。
嵌入式Linux系统移植主要由四大部分组成:
搭建交叉开发环境;
bootloader的选择和移植;
kernel的配置、编译、和移植;
根文件系统的制作;
关于具体的移植详情请看后文。
1.2 Binutils工具集 解析
对于嵌入式系统开发,掌握相应的工具至关重要,它能使我们解决问题的效率大大提高。目前,可以说嵌入式系统的开发工具是GNU的天下,因为来自GNU的GCC编译器支持大量的目标处理器。除了GCC,还有一个非常重要的、同样来自于GNU的工具集(toolchain) —— binutils toolchain。这一工具集中存在的一些工具,可以说是我们开发和调试不可缺少的利器。 Binutils中的工具不少和GCC相类似,也是针对特定的处理器的。
在binutils中以下的工具是我们在做嵌入式系统开发时需要掌握的: