第1章
Buildroot初探
什么是Buildroot?为什么选择Buildroot?对比Yocto、OpenWrt
概念对比
第2章
环境准备
安装Ubuntu 22.04 LTS · 配置国内源 · 安装依赖包
虚拟机依赖
第3章
源码下载
Git仓库下载 · 稳定版本分支 · 完整性验证
Git校验
第4章
目录结构解析
board, configs, package, dl, output 详解
架构顶层
第5章
首次配置
make menuconfig · 选择ARM架构 · Target/Build options
menuconfigARM
第6章
Toolchain配置
外部/内部工具链 · 内核头文件 · C库类型 (glibc/uclibc/musl)
工具链C库
第7章
系统配置
主机名 · 欢迎语 · root密码 · Init系统 (BusyBox/Systemd)
系统初始化
第8章
内核配置
选择内核版本 · 内核选项 · 自定义内核配置
Kernel配置
第9章
Bootloader配置
U-Boot版本 · 板级支持 · 环境变量
U-Boot启动
第10章
文件系统配置
ext4/squashfs/initramfs · overlay覆盖层
文件系统overlay
第11章
软件包管理
BusyBox, Dropbear, i2c-tools, alsa-utils · 依赖配置
软件包依赖
第12章
网络配置
ifupdown, NetworkManager, dhcpcd · 静态IP/DHCP
网络DHCP
第13章
调试工具
gdbserver, strace, ltrace, perf · 内核调试选项
调试性能
第14章
图形界面
Qt5/Qt6 · DRM/Framebuffer · 触摸屏支持
Qt显示
第15章
WiFi与蓝牙
brcmfmac, rtl88xx · BlueZ · WPA Supplicant
WiFi蓝牙
第16章
音频与视频
ALSA · GStreamer · FFmpeg
音频视频
第17章
存储与分区
MTD/UBIFS · MMC/SD卡驱动 · 分区表脚本
存储分区
第18章
安全特性
OpenSSL/LibreSSL · iptables/nftables · SELinux/AppArmor
安全防火墙
第19章
Python与脚本
Python3 · pip · 自定义Python脚本
Python脚本
第20章
外部包管理
BR2_EXTERNAL · Config.in/.mk · 集成第三方库
外部包BR2
第21章
配置保存与重用
defconfig · 多配置构建 · config fragment
defconfig重用
第22章
首次构建
make命令 · 下载/解压/配置/编译/安装 · 构建日志
构建日志
第23章
构建加速
ccache · 并行编译 BR2_JLEVEL · 预下载源码包
加速缓存
第24章
构建问题排查
常见错误 · 依赖缺失 · 网络超时 · 版本冲突
排错日志
第25章
生成镜像
output/images 文件 · zImage, rootfs.ext4, u-boot.bin · SD卡镜像
镜像SD卡
第26章
QEMU模拟
安装QEMU · 启动参数 · 使用Buildroot镜像启动
QEMU模拟
第27章
烧录到开发板
SD/TF卡 · dd命令 · 开发板启动模式
烧录dd
第28章
首次启动
串口终端 · U-Boot启动 · 内核日志 · 登录系统
启动串口
第29章
系统验证
uname -a · /proc/cpuinfo · 网络/I2C/SPI验证
验证硬件
第30章
项目总结
构建流程回顾 · 常见问题 · 学习资源 · 驱动/应用开发方向
总结进阶