Buildroot构建嵌入式系统:从配置到运行

📚 共计 30 章节
第1章
Buildroot初探
什么是Buildroot?为什么选择Buildroot?对比Yocto、OpenWrt。
概念对比
第2章
环境搭建
Ubuntu 22.04安装依赖、下载源码、首次编译准备。
Ubuntu依赖
第3章
Buildroot目录结构
顶层目录、package、board、configs、output详解。
结构组织
第4章
配置Buildroot
make menuconfig基础配置,选择ARM/x86/RISC-V架构。
menuconfig架构
第5章
工具链配置
内建vs外部工具链、GCC版本、C库(glibc/uClibc/musl)。
工具链C库
第6章
Bootloader配置
U-Boot编译、AT91Bootstrap、GRUB2选择。
U-Boot启动
第7章
Linux内核配置
Buildroot配置内核、自定义源码、补丁管理。
内核补丁
第8章
根文件系统构建
BusyBox配置、init选择(systemd/OpenRC/BusyBox init)。
BusyBoxinit
第9章
软件包管理
添加/删除包、配置选项、BR2_PACKAGE_*变量。
软件包变量
第10章
文件系统类型
ext4、squashfs、initramfs、overlayfs选择与配置。
文件系统overlay
第11章
设备树 (Device Tree)
概念、配置、编译与加载设备树。
设备树DTS
第12章
自定义根文件系统
rootfs_overlay、post-build、post-image脚本。
overlay脚本
第13章
交叉编译原理
交叉工具链、Makefile交叉编译、测试结果。
交叉编译Makefile
第14章
U-Boot实战
配置U-Boot for QEMU ARM、编译、生成uImage。
U-BootQEMU
第15章
Linux内核实战
配置内核 for QEMU ARM、编译、生成zImage。
内核zImage
第16章
QEMU仿真运行
安装QEMU、启动镜像、调试启动过程。
QEMU仿真
第17章
网络配置
静态IP、DHCP、NFS根文件系统挂载。
网络NFS
第18章
开发板实战
Raspberry Pi 3配置、SD卡镜像、烧录启动。
树莓派SD卡
第19章
调试技巧
debug选项、GDB远程调试、分析编译日志。
调试GDB
第20章
性能优化
减小根文件系统、优化启动、ccache加速。
优化ccache
第21章
安全加固
移除多余包、防火墙、SELinux/AppArmor。
安全SELinux
第22章
实时系统
PREEMPT_RT内核、cyclictest测试实时性能。
实时RT
第23章
图形界面
Qt5、LVGL、SDL2配置,QEMU中运行图形。
Qt5LVGL
第24章
Wi-Fi与蓝牙
wpa_supplicant、BlueZ、连接Wi-Fi网络。
Wi-Fi蓝牙
第25章
存储管理
MTD分区、UBIFS、LVM配置。
存储UBIFS
第26章
系统更新
swupdate、OTA更新、双分区升级。
OTAswupdate
第27章
自动化构建
defconfig、GitLab CI/CD自动化Buildroot构建。
CI/CDdefconfig
第28章
扩展包开发
编写Buildroot package、Kconfig选项、测试。
packageKconfig
第29章
多平台支持
同时构建ARM和x86镜像、外部工具链。
多架构工具链
第30章
综合项目
智能家居网关:ARM+Linux+Qt+Wi-Fi+MQTT。
项目网关