编译内核无法生成uImage的原因分析

   

uBoot启动内核,需要符合要求的内核镜像文件uImage(包含head+body组成);

内核镜像需要mkimage来制作;

如果shell在环境变量目录中找不到mkimage工具,就无法生成uImage;

这里的mkimage必须是编译uboot源码后,在/uboot/tools下面生成的工具mkimage。


所以解决办法就是:

第一步:编译uboot,这时将会在uboot/tools下生成mkimage工具;

第二步:声明环境变量,在/etc/bash.bashrc中添加如下语句:

export PATH=/opt/program/mx53_android/uboot/tools:$PATH

这里要和自己的uboot的路径对应。

然后更新bashrc脚本:

source /etc/bash.bashrc

注意一定要在和编译内核同一个终端执行该语句,否则同样会出现

"mkimage" command not found - U-Boot images will not be built

的错误。

由于我们随时可能清空掉uboot中的编译文件,这意味着mkimage文件随时会被清除,我们

可以将它复制到/usr/bin下,然后在bashrc中声明,以确保内核正常编译。

你可能感兴趣的:(编译内核无法生成uImage的原因分析)