嵌入式实践教程--使用Buildroot制作Uboot&Kernel&Rootfs

简介: 嵌入式实践教程--使用Buildroot制作Uboot&Kernel&Rootfs

一开始接触Buildroot的时候是参考的N厂大佬的文章,经过各种填坑,终于算是能够熟练使用Buildroot了。下面介绍常用使用流程工具链


一、工具链的构建



首先选择芯片类型,然后进入Toolchain选项配置External toolchain,选择已经安装好的toolchain,指定路径,这个路径不能和配置虚拟机交叉工具链一样指定到bin目录,直接指定到它的上层目录就行!选择glibc(在这个坑里呆了很久)


image.pngimage.png


由于工具链制作的时候明确指定了gcc版本和支持的kernel headers series,所以需要我们去工具链找,shell输入arm-再敲两下回车,补上gcc -v下面会打印gcc version,以及这个工具链支持板子的类型和哪些功能等,这些会在配置板子信息的时候用到。


image.png


当然也可以选择Buildroot本身制作的工具链,但是没有经过压力测试所以可靠性没有Linaro官网的高,可能会出现一些莫名奇妙的问题。


二、配置Uboot



在buildroot中打patch,利用buildroot2018中的patch机制来更改源码。之所以要用patch,是因为buildroot在编译时是直接从下载目录中解压软件包的,没有我们手动改源码的机会.


指定补丁路径和xxx_defconfig配置文件


image.png


三.配置Kernel



和uboot一样指定补丁和xxx_defconfig路径


四.配置Rootfs



选择Rootfs类型


image.png


选择文件系统所带的库, 比如OpenCV,OpenGL,FFmpeg,SDL,QT5等各种各样的PACKAGES.


image.pngimage.png


最后make -j4,在output下会生成对应的镜像.

相关文章
|
Ubuntu Linux 虚拟化
Linux下的IMX6ULL——构建bootloader、内核、文件系统(四)
Linux下的IMX6ULL——构建bootloader、内核、文件系统(四)
1260 0
Linux下的IMX6ULL——构建bootloader、内核、文件系统(四)
|
Linux 开发者
交叉编译工具链的下载与安装
交叉编译工具链的下载与安装
4100 1
|
9月前
|
存储 Linux 开发工具
Linux环境下使用Buildroot配置软件包
使用Buildroot可以大大简化嵌入式Linux系统的开发和维护工作,但它需要对Linux系统和交叉编译有深入的理解。通过上述步骤,可以有效地配置和定制软件包,为特定的嵌入式应用构建高效、稳定的系统。
995 11
|
Linux 网络安全 开发工具
内核实验(二):自定义一个迷你Linux ARM系统,基于Kernel v5.15.102, Busybox,Qemu
本文介绍了如何基于Linux Kernel 5.15.102版本和BusyBox创建一个自定义的迷你Linux ARM系统,并使用QEMU进行启动和调试,包括内核和BusyBox的编译配置、根文件系统的制作以及运行QEMU时的命令和参数设置。
1788 0
内核实验(二):自定义一个迷你Linux ARM系统,基于Kernel v5.15.102, Busybox,Qemu
|
存储 缓存 IDE
深度探索Linux操作系统 —— 构建initramfs
深度探索Linux操作系统 —— 构建initramfs
1959 5
|
存储 Linux 编译器
Linux用户空间和内核空间所有15种内存分配方法
Linux用户空间和内核空间所有15种内存分配方法
699 1
|
算法 网络协议 Linux
Linux模块文件编译到内核与独立编译成.ko文件的方法
Linux模块文件编译到内核与独立编译成.ko文件的方法
6022 0
|
Linux 内存技术 Perl
【ZYNQ】制作从 QSPI Flash 启动 Linux 的启动文件
【ZYNQ】制作从 QSPI Flash 启动 Linux 的启动文件
3063 0

热门文章

最新文章