小白也能学会的Buildroot配置指南
📚 共计 30 章节
第01章
Buildroot初探
什么是Buildroot?与Yocto/OpenWrt对比,小白首选理由
入门
对比
第02章
环境准备
Ubuntu 22.04 安装依赖、下载源码、目录结构解析
环境
dl
output
第03章
快速上手
qemu_x86_defconfig + make 全流程编译体验
QEMU
第一次编译
第04章
配置界面入门
make menuconfig 详解 · 顶层菜单介绍
menuconfig
配置
第05章
目标架构选择
ARM/MIPS/x86 · 字节序/FPU · 树莓派3B+ 实例
架构
Cortex-A53
第06章
工具链配置
内部 vs 外部 · GCC版本 · C库(glibc/uclibc/musl) 踩坑
工具链
musl
第07章
系统配置
主机名/欢迎语/root密码/网络/时区 · 上电自动联网
系统
DHCP
第08章
内核配置
Linux defconfig · 内核版本/补丁/设备树(.dts)
内核
设备树
第09章
BusyBox配置
BusyBox 为什么离不开?配置常用命令开关
BusyBox
命令
第10章
文件系统类型
ext4/squashfs/initramfs · 我的squashfs+overlayfs方案
文件系统
overlayfs
第11章
Target packages概览
软件包管理哲学 · make search · 添加自己的包
包管理
搜索
第12章
网络相关包
dropbear/iperf3/wpa_supplicant · 远程登录板子
SSH
WiFi
第13章
开发工具包
gdb/strace/valgrind · 调试救命三件套
调试
gdb
第14章
语言运行时
Python3/Node.js/Lua · pip/numpy 脚本跑起来
Python
Node.js
第15章
硬件驱动包
i2c-tools/spi-tools/gpiod/lm-sensors · 外设操作
I2C
SPI
GPIO
第16章
文件系统包
sshfs/nfs-utils/samba4 · 板子与PC文件共享
NFS
Samba
第17章
图形与显示
Qt5/SDL2/DirectFB · framebuffer/DRM 显示GUI
Qt5
DRM
第18章
外部工具链
ARM gcc-arm-none-eabi · 外部工具链集成
外部工具链
ARM
第19章
自定义rootfs overlay
board/overlay · 配置文件/脚本/开机自启
overlay
自启动
第20章
自定义内核补丁
.patch 补丁存放 · Kernel patch 目录应用
补丁
内核
第21章
自定义软件包 (上)
Config.in .mk 结构 · helloworld 包起步
自定义包
helloworld
第22章
自定义软件包 (下)
DEPENDENCIES · 配置选项 · 移植开源库
依赖
移植
第23章
根文件系统瘦身
分析rootfs大小 · strip · 128MB→32MB实战
瘦身
strip
第24章
编译加速技巧
ccache · BR2_JLEVEL · sstate缓存 · 1h→15min
加速
ccache
第25章
离线编译
make source · 打包离线包 · 无网络现场编译
离线
source
第26章
多板型管理
external机制 · 共享基础配置 · 树莓派/全志H3/STM32MP1
多板型
external
第27章
生成SD卡镜像
genimage · 分区表 · 可烧录 .img 文件
镜像
genimage
第28章
调试与排错
常见编译错误 · 阅读log · debug三板斧
调试
排错
第29章
实战:树莓派3B+
WiFi/蓝牙/GPIO/I2C/SPI/音频 · 完整可运行镜像
树莓派
实战
第30章
总结与进阶
Buildroot局限性 · 何时转Yocto · 学习路线
总结
进阶