【EasyARM-iMX287】uboot编译

编译需要安装arm-fsl-linux-gnueabi-gcc工具链并且配置好环境变量,若没有,则参照安装:
嵌入式Linux开发(准备篇) | 嵌入式Linux介绍及ARM9开发环境搭建

1.准备适配开发板的uboot压缩包

在开发板配套资料中获得:

解压:

tar -jxf bootloader-v1.13.tar.bz2


目录说明:

目录名 描述
u-boot-2009.08 U-Boot源代码,编译后得到u-boot文件,但还不能用于开发板
imx-bootlets-src-20.12.01 对u-boot文件打补丁,再次编译,生成适用于开发板的文件
elftosb Freescale提供的elf->sb文件格式转化工具

2.开始编译

2.1.u-boot-2009.08目录下编译

  1. 进入u-boot-2009.08目录:
  2. 清除原有编译文件
make ARCG=arm CROSS_COMPILE=arm-fsl-linux-gnueabi- distclean

  1. 编译配置,配置U-Boot的平台为mx28_evk_config:
make ARCH=arm CROSS_COMPILE=arm-fsl-linux-gnueabi- mx28_evk_config

  1. 执行编译:
make ARCH=arm CROSS_COMPILE=arm-fsl-linux-gnueabi-


编译完成后,生成了u-boot文件:

注意,这个u-boot文件不能作为固件直接烧写到开发板中,需要使用imx-bootlets-src-20.12.01下的工具进一步编译成带电源配置的imx28_ivt_uboot.sb固件文件。

2.2.进一步编译

  1. 首先将上一步中生成的u-boot复制到imx-bootlets-src-20.12.01目录下:
cp u-boot ../imx-bootlets-src-20.12.01/

  1. elftosb目录下的elftosb_64bit文件改名为elftosb,复制到/usr/bin目录下:
mv elftosb_64bit elftosb
sudo cp elftosb /usr/bin/
  1. 进入imx-bootlets-src-20.12.01目录,执行编译命令:
make CROSS_COMPILE=arm-fsl-linux-gnueabi- BOARD=iMX28_EVK

猜你喜欢

转载自blog.csdn.net/Mculover666/article/details/87558456