📘 Buildroot · 最小嵌入式Linux
30章 从零到网关
🎯 友好色系
01
Buildroot初探
什么是Buildroot,为什么选择Buildroot,对比Yocto/OpenWrt
02
环境准备
Ubuntu安装依赖,下载源码,了解目录结构
03
快速上手
默认配置编译最小系统,QEMU模拟运行
04
配置工具链
内建 vs 外部工具链,ARM/MIPS/x86架构
05
内核配置
选择内核版本,配置选项,使用defconfig
06
根文件系统
BusyBox配置编译,最小根文件系统,init进程
07
Bootloader
U-Boot配置编译,启动镜像,启动流程
08
设备树
什么是DTB,编写设备树,Buildroot集成
09
软件包管理
软件包框架,添加/删除dropbear、lighttpd
10
自定义根文件系统
rootfs overlay,post-build脚本
11
存储布局
genimage分区表,SD卡镜像,烧录硬件
12
调试与日志
调试选项,buildroot.log分析编译错误
13
网络配置
静态IP/DHCP,iperf、tcpdump,连通性测试
14
文件系统类型
squashfs、ext4、initramfs 优缺点
15
启动优化
测量启动时间,bootchart,内核/用户空间优化
16
安全加固
移除无用包,iptables防火墙,ASLR
17
实时性配置
PREEMPT_RT内核,cyclictest测试
18
图形界面
Qt / LVGL,帧缓冲或DRM驱动
19
无线连接
Wi-Fi驱动(ath9k),wpa_supplicant,连接热点
20
蓝牙配置
BlueZ协议栈,蓝牙音频/BLE应用
21
传感器集成
I2C/SPI驱动,LM75温度传感器,用户空间应用
22
音频系统
ALSA驱动,aplay/arecord,播放WAV
23
视频输出
V4L2驱动,摄像头,ffmpeg视频采集
24
外部模块
内核树外模块,树莓派GPU驱动,BR2_LINUX_KERNEL_EXT
25
版本管理
Git管理Buildroot配置,自定义软件包仓库
26
持续集成
GitHub Actions CI脚本,自动编译测试
27
多平台支持
多板卡defconfig,BR2_EXTERNAL机制
28
生产部署
OTA更新,swupdate工具,远程升级
29
性能调优
perf分析,内核参数优化,减少内存占用
30
综合实战
物联网网关:Wi-Fi、蓝牙、MQTT、Web服务器