注:交叉编译环境ubuntu18.04 ,若无需工具链要求,则config之后直接make即可编译。
1.buildroot介绍
一 般 文 件 系 统 都 要 包 含 很 多 第 三 方 软 件 , 比 如busybox,tftp,apache,PHP,DNS,qt 等等,为了避免繁琐的移植工作,buildroot应运而生,通过 menuconfig 来配置我们需要的功能,不需要的去掉,再执行 make 编译,buildroot 就会自动从指定的服务器上下载源码包,自动编译,自动搭建成我们所需要的嵌入式文件系统。
buildroot下载官网:https://buildroot.org/
下载buildroot.tar.gz 解压:sudo tar -xvf buildroot.tar.gz
2.编译脚本的构建
在 buildroot 的顶层目录下写个 cmd.sh 编译的脚本文件。内容如下:
chomd 777 cmd.sh 给脚本赋可执行权限。
其中将我们需要的交叉工具链放到/opt/目录下,导出环境变量,make编译, arch指定架构,CROSS_COMPILE指定工具链,可以为绝对路径也可以为相对路径。
3.拷贝config配置文件
从顶层目录下的 configs 目录下需要的deconfig文件拷贝到顶层目录下的.config。
4.执行./cmd.sh menuconfig 开始配置 buildroot:
这些配置根据需要配置即可,网上有很多详解配置信息,在此不重复做解释。
5.编译
单独执行2步骤脚本最后一行,或者执行脚本即可编译,等待漫长的几小时即可编译完成,具体时间看电脑性能。
最后在 output/images/下就生成了我们要的文件系统镜像!