本帖最后由 guiyizhiyun 于 2014-5-11 14:02 编辑
u-boot 拿到u-boot源码,首先要知道的就是u-boot的主要文件目录的作用,这个就需要查看README这个文件,在Directory Hierarchy这一行以后,就是对整个u-boot源码的文件结构的说明,具体后面有英文解释说明,我就不多说了。
下一步就进行u-boot的编译过程,这里使用手册上是这样写的。
个人觉得如果只编译一次,这样做没问题,如果需要你修改u-boot源码,在里面添加一些其他功能的话,这样做步骤重复性太高,所以我采用修改Makefile这个文件来处理这个问题。 进入到u-boot-imx文件夹下。
打开Makefile。 在 Ifeq ($(ARCH),powerpc) ARCH = ppc Endif 下添加: ARCH = arm
在 Ifeq ($(HOSTARCH),$(ARCH)) CROSS_COMPILE ?= Endif 下添加: CROSS_COMPILE=~/fsl-linaro-toolchain/bin/arm-fsl-linux-gnueabi-
保存,退出。 make distclean make mx6solo_riot_config(网盘下载源码)
我使用这条指令出现错误,查看了一下其他人的经验,原因是网盘下载源码使用此指令编译。
由于我是使用git下载的源码所以我查找了原因使用下面的指令可以完成编译。
make mx6solo_RIoTboard_config(git下载源码) 处理依据: 在README这个文件里有如下图所示的描述,大意是如果使用默认配置选项的话,就输入下面示例类型的代码,就可以完成编译。
所以去/u-boot-imx/board/freescale/这个文件夹下,就找到mx6solo_RIoTboard,按照上面的说明敲入指令就可以了。 Make 这样u-boot就编译成功了。
u-boot.bin就是编译成功的u-boot镜像文件。
说明:有时我们自己做产品,自己的开发板和官方的评估板是有区别的,所以在编译u-boot的时候需要针对我们自己的开发平台移植相应的代码,这就需要更深入的了解u-boot的代码结构等相关信息,由于我也是新手,关于这方面的问题,就需要使用者们自己去研究。
|