Buildroot 瘦身营
📘 30 章 · 从入门到量产
🐧
嵌入式
⚡
文件系统
🧩
定制技巧
01
Buildroot概述
什么是Buildroot
与Yocto对比
核心概念
02
环境搭建
安装依赖
下载源码
首次编译
03
配置工具入门
make menuconfig
保存/加载
常用选项
04
目标架构选择
CPU架构
ARM/MIPS/RISC-V
交叉工具链
05
根文件系统基础
rootfs目录
BusyBox集成
init系统
06
软件包管理
选择策略
依赖处理
自定义包
07
文件系统瘦身原则
最小化原则
模块化
按需裁剪
08
BusyBox裁剪
配置详解
移除无用命令
定制功能
09
glibc vs musl vs uclibc
C库对比
空间占用
兼容性
10
内核模块瘦身
内核配置裁剪
按需加载
删除无用驱动
11
文件系统类型选择
squashfs
jffs2/ubifs
ext4对比
12
压缩算法优化
gzip/lz4/lzo/xz
压缩率
解压速度
13
移除调试符号
strip工具
编译选项
-g与-Os
14
语言环境裁剪
locale移除
时区精简
字符集
15
网络功能定制
移除无用协议
轻量级网络栈
iptables精简
16
图形系统选择
DirectFB
Qt Embedded
LVGL/无图形
17
Python/Node.js运行时裁剪
移除无用模块
MicroPython
精简依赖
18
日志系统优化
syslogd vs busybox
日志级别
轮转
19
设备节点管理
静态dev
devtmpfs/mdev/udev
20
启动时间优化
init优化
并行启动
systemd vs busybox
21
OverlayFS与只读文件系统
OverlayFS原理
只读rootfs+可写
22
自定义rootfs overlay
overlay目录
配置文件覆盖
首次启动脚本
23
post-build与post-image脚本
自动化定制
后处理
镜像生成
24
外部工具链与BR2_EXTERNAL
外部工具链
BR2_EXTERNAL
多项目共享
25
defconfig管理
自定义defconfig
版本控制
团队协作
26
补丁管理
软件包打补丁
内核补丁
补丁目录
27
离线编译与缓存
DL_DIR
CCACHE
离线构建
28
多平台支持
多架构配置
board目录
条件编译
29
安全加固
移除危险命令
权限控制
ASLR/栈保护
30
实战案例
2MB根文件系统
量产镜像
OTA升级