前几天一味盲目的编译u-boot和kernel,没时间看freescale的documentions了,直接导致编译出的u-boot.bin和用于u-boot加载kernel的镜像文件uImage无法启动。今天看了document后,一下子就编译过去了,现在在这里做一个笔记。
(一)编译u-boot
(1)cd <your_u-boot_folder>
(2)make ARCH=arm CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-none-linux-gnueabidistclean
(3)make ARCH=arm CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-none-linux-gnueabimx51_bbg_config
(4)make ARCH=arm CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-none-linux-gnueabi-
(二)编译kernel
(1)cd <your_kernel_folder>
(2)make ARCH=arm CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-none-linux-gnueabi- imx5_defconfig
(3)make ARCH=arm CROSS_COMPILE=/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/arm-none-linux-gnueabi- uImage
注明:这个方法建立在安装好了mx51的bsp的基础上,也就是LTIB(linux target image builder)。这是摘至i.MX51_EVK_Linux_BSP_UserGuide.pdf文档上面的。
i.MX51_EVK_Linux_BSP_UserGuide.pdf 下载见
这其中出了点小问题, error:mkimage:command not found,原因是路径不对,把/opt/freescale/ltib/usr/bin/mkimage 拷贝到/usr/bin/目录下就可以了。