🌱 Buildroot 实战
30章 · 多平台交叉编译
🎒 风格 · 目录导航
01
Buildroot 概述
什么是Buildroot
对比Yocto
核心优势
应用场景
02
环境准备
Linux主机要求
安装依赖
Git/Repo
磁盘规划
03
源码获取
Git克隆
稳定版本
验证完整性
目录结构
04
配置工具链
make menuconfig
Target options
Toolchain类型
C库选择
05
配置内核
内核版本
内核选项
设备树
模块管理
06
配置Bootloader
U-Boot版本
板级配置
SPL/TPL
环境变量
07
文件系统配置
根文件系统类型
BusyBox
设备节点
fstab/inittab
08
软件包管理
选择策略
依赖处理
自定义包
OverlayFS
09
交叉编译工具链详解
gcc/binutils/glibc
sysroot
交叉前缀
测试工具链
10
外部工具链集成
预编译(Linaro/ARM)
配置路径
兼容性验证
问题排查
11
自定义软件包开发
创建包目录
Config.in/.mk
补丁(patch)
测试构建
12
Rootfs Overlay机制
Overlay目录
自定义配置文件
启动脚本
权限管理
13
Post-build/Post-image
脚本触发时机
修改文件/生成镜像
调试技巧
14
配置保存与复用
defconfig生成
版本管理
多板型配置
自动化脚本
15
ARM平台·树莓派
板级配置
GPU固件
WiFi/BT驱动
SD卡镜像
16
ARM64·Pi 3/4
64位工具链
ARM64内核
UEFI支持
性能优化
17
x86平台·QEMU
x86_64目标
QEMU启动
网络桥接
磁盘镜像
18
RISC-V平台实战
工具链配置
OpenSBI
内核RISC-V
QEMU验证
19
MIPS平台实战
MIPS工具链
内核选项
Big/Little Endian
常见问题
20
NXP i.MX平台
板级支持包
VPU/GPU驱动
DDR配置
NAND/NOR Flash
21
Allwinner平台
H3/H5配置
DRM显示
音频编解码
GPIO控制
22
STM32MP平台
STM32MP1配置
TF-A
OP-TEE
M4协处理器
23
JTAG/SWD调试
OpenOCD
GDB交叉调试
断点设置
内存查看
24
性能优化
ccache
并行编译 -j
LTO优化
strip策略
镜像大小
25
安全加固
用户管理
SSH配置
iptables/nftables
SELinux/AppArmor
安全启动
26
实时系统支持
PREEMPT_RT
实时内核配置
cyclictest
优先级反转
27
容器支持
Docker/Containerd
cgroups
OverlayFS
容器镜像
28
OTA升级方案
SWUpdate
双分区策略
签名验证
回滚机制
升级脚本
29
持续集成 (CI)
GitLab CI
自动构建
自动测试
镜像发布
质量门禁
30
综合项目·智能网关
需求分析
组件选型
集成调试
性能测试
文档输出