嵌入式实践教程--使用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下会生成对应的镜像.

相关文章
|
26天前
|
Linux 编译器 Windows
【Linux】新唐NUC977系统编译及烧写流程
【Linux】新唐NUC977系统编译及烧写流程
|
8月前
|
Ubuntu
|
11月前
|
Linux 编译器 开发工具
Flash Jetson Linux 刷写系统报错处理
在使用 SDK Manager 刷写Jetson Linux 时会出现一些错误,本篇文章介绍了几种问题的解决方案。
938 0
|
Linux 内存技术
Buildroot系列开发(五)bootloader简述
Buildroot系列开发(五)bootloader简述
93 0
Buildroot系列开发(五)bootloader简述
|
Linux
Buildroot系列开发(六)linux kernel(上)
Buildroot系列开发(六)linux kernel
124 0
Buildroot系列开发(六)linux kernel(上)
|
缓存 Linux 开发工具
Buildroot系列开发(六)linux kernel(下)
Buildroot系列开发(六)linux kernel
182 0
Buildroot系列开发(六)linux kernel(下)
|
Ubuntu
嵌入式实践教程--ubuntu18.04-armhf根文件系统移植
嵌入式实践教程--ubuntu18.04-armhf根文件系统移植
|
开发工具 git
嵌入式实践教程--Buildroot使用深入
嵌入式实践教程--Buildroot使用深入
|
自然语言处理 Linux 编译器
如何基于Buildroot和Qemu搭建嵌入式Linux系统环境
为了能够更好的学习嵌入式Linux内核,本文基于qemu-system-arm工具模拟ARM公司的VersatileExpress硬件环境,基于buildroot工具制作rootfs,并且扩展了buildroot,增加内核配置管理,定制rootfs等功能。
759 0
|
存储 缓存 Ubuntu
【嵌入式开发】 Linux Kernel 下载 配置 编译 安装 及 驱动简介(二)
【嵌入式开发】 Linux Kernel 下载 配置 编译 安装 及 驱动简介(二)
167 0