作者:朱老师,华清远见嵌入式学院讲师。
双核平板电脑fspad_723的u_boot,内核,文件系统编译几乎全部依赖于shell脚本,下面对其脚本编译规则择其要点进行分析:
源码的顶级脚本名称是build.sh,打开它,看里面的内容:
Build.sh文件会调用mkcommon.sh 并接受其传递来的参数
Mkcommon.sh主要定义了一些环境变量,如果传来的参数是”pack”打包命令,则执行buildroot/scripts/build_pack.sh脚本:
首先也是定义了一些环境变量,导出所需shell 函数,重点看其所调用的pack脚本:
上面的脚本列出了打包的对象,打包的芯片型号为sun8iw1p1,包括对linux 和 android的打包:
开头定义了安装包镜像的输出目录,然后调用do_prepare函数:
主要是判断输入的参数是否有效,如果无效,则打印出帮助信息,提示用户输入正确的参数:
而后调用do_pack函数,如果编译的是dragon平台的linux镜像,则调用do_pack_dragon
这部分代码主要是完成对配置文件、bootloader可执行文件的拷贝,并利用文件系统制作工具,完成对boot.img文件的制作:
最后利用fsbuild工具完成boot.img、rootfs的打包,生成总体镜像。
文章来源:华清远见嵌入式学院,原文地址:http://www.embedu.org/Column/Column846.htm
更多相关嵌入式免费资料查看华清远见讲师博文>>