Skip to content

方向 D2:工具完备

最后更新:2026-06-14(对齐实际进度) 任务数量:66项 (9工具 + 57文档),文档已完成约 8 项


📋 为什么重要

方向 D2 的核心目标是提供完整的辅助工具链,提升开发效率和用户体验。当环境配置完成后,良好的工具可以让开发过程更加顺畅。

核心价值

  • 提供完整的开发工具集
  • 建立 CI/CD 基础
  • 完善文档体系
  • 支持多板卡扩展

📊 优先级概览

优先级工具任务文档任务总计
P16项(待办)49项(✅约8 / 待办约41)55
P23项(待办)8项(待办)11
总计95766

注:原概览表 P2 文档记为 - 且总数 50 有误,本次重计为 9 工具 + 57 文档 = 66。


📋 P1: 重要功能 (6工具 + 49文档)

提升开发效率和调试能力的关键功能

2026-06-14 对齐:P1-1 系统调试手册、P1-2 交叉调试所引用的 tutorial/debug/tutorial/workflow/tutorial/tools/ 目录均尚未建立,整体待办;现有部分覆盖见 kernel/mainline/11 常见问题practical/03 启动调试kernel/08 内核启动调试

工具任务 (6项)

任务推荐基础说明
D2-003: select-board.shD1-006板卡切换脚本
D2-004: 板卡接入文档D1-006多板卡接入规范
D2-005: CI - Patch 校验-自动补丁格式检查
D2-007: build-buildroot.shD1-004Buildroot 根文件系统构建脚本
D2-008: buildroot_menuconfig.shD2-007Buildroot 配置管理工具
D2-009: clean_buildroot.shD2-007Buildroot 清理工具

文档任务 (23项)

P1-1: 系统调试手册 (10项)

任务相关文件
[ ] U-Boot common issues / U-Boot 常见问题排查document/tutorial/debug/
[ ] Serial console no-output troubleshooting / 串口无输出排查document/tutorial/debug/
[ ] Network boot troubleshooting / 网络启动问题排查document/tutorial/debug/
[ ] Kernel panic common issues / Kernel panic 常见问题排查document/tutorial/debug/
[ ] DTB mismatch troubleshooting / DTB 不匹配问题排查document/tutorial/debug/
[ ] Rootfs and init failure troubleshooting / Rootfs 与 init 失败排查document/tutorial/debug/
[ ] NFS / TFTP troubleshooting / NFS / TFTP 常见问题排查document/tutorial/debug/
[ ] Kernel module loading failure troubleshooting / 模块加载失败排查document/tutorial/debug/
[ ] Serial log reading guide / 串口日志阅读指南document/tutorial/debug/
[ ] How to submit useful debug logs / 如何提交有效的问题日志document/tutorial/debug/

P1-2: 交叉调试与诊断 (7项)

任务相关文件
[ ] gdbserver deployment guide / gdbserver 板端部署说明document/tutorial/debug/
[ ] VSCode + GDB cross-debugging setup / VSCode + GDB 交叉调试配置document/tutorial/workflow/
[ ] Debugging shared libraries / 共享库调试说明document/tutorial/debug/
[ ] strace basic usage / strace 基础使用document/tutorial/tools/
[ ] Core dump debugging workflow / core dump 调试流程document/tutorial/debug/
[ ] Basic logging workflow / 基础日志收集流程document/tutorial/debug/
[ ] Basic performance inspection tools / 基础性能分析工具说明document/tutorial/tools/

P1-3: 构建工具 (17项 — 已完成 9,基于旧教程 Ch 3, 34, 40)

VIM/GCC/二进制工具基础已由 linux-basics/ 覆盖(原路径 tutorial/tools/tutorial/ubuntu/ 已废弃)。

任务状态实际文件
Makefile basics and advanced / Makefile 基础[x]ch31 gcc 与 make
Makefile syntax 实战 / Makefile 语法进阶[ ] ⚠️ch31 覆盖基础,进阶待补
Cross-compilation Makefile practice / 交叉编译 Makefile[ ] ⚠️ch35 交叉编译,Makefile 实践待补
CMake cross-compilation / CMake 交叉编译[ ]
CMakeLists.txt writing / CMakeLists.txt 编写[ ]
CMake with Qt cross-compilation / CMake 与 Qt 交叉编译[ ]
menuconfig principles and usage / menuconfig 原理与使用[x]kernel/03 内核配置
Kconfig syntax / Kconfig 语法[ ] ⚠️缺专篇
Kernel/U-Boot configuration practice / 内核/uboot 配置实战[x]kernel/03 + uboot/02
VIM quick start / VIM 快速入门[x]ch12 vim
VIM modes and operations / VIM 模式与操作[x]ch12 vim
VIM configuration and plugins / VIM 配置与插件[ ] ⚠️ch12 覆盖基础,插件待补
GCC compilation options / GCC 编译选项[x]ch31 gcc 与 make
Static and dynamic library compilation / 静态库与动态库[x]ch31 gcc 与 make
objdump, nm, readelf usage / objdump, nm, readelf[x]ch33 binutils
ldd library dependency checking / ldd 查看库依赖[x]ch33 binutils
Time measurement and performance analysis / 时间测量与性能[ ] ⚠️
P1-3a: Buildroot 根文件系统构建(新增)
任务相关文件
[ ] Buildroot 概述与对比分析 / Buildroot overview and comparisondocument/tutorial/build/04_buildroot_introduction.md
[ ] Buildroot 快速开始指南 / Buildroot quickstart guidedocument/tutorial/build/05_buildroot_quickstart.md
[ ] Buildroot 配置系统详解 / Buildroot config system explaineddocument/tutorial/build/06_buildroot_config.md
[ ] Buildroot 定制化与包管理 / Buildroot customization and packagesdocument/tutorial/build/07_buildroot_customization.md
[ ] Buildroot 故障排查手册 / Buildroot troubleshooting guidedocument/tutorial/build/08_buildroot_troubleshooting.md
[ ] Buildroot 与 QT6 集成实战 / Buildroot with QT6 integrationdocument/tutorial/practical/03_buildroot_qt6.md

P1-4: 驱动开发工具 (9项 — 已完成 2,基于旧教程 Ch 52-76)

阻塞/非阻塞 I/O、异步通知已由 kernel/core-functional/ 覆盖;I2C/SPI/UART 等子系统驱动见 Issue #54 驱动开发待做清单

任务状态实际文件
I2C driver framework complete tutorial / I2C 驱动框架[ ]缺,见 #54
SPI driver framework complete tutorial / SPI 驱动框架[ ]缺,见 #54
UART driver development / UART 驱动开发[ ]缺,见 #54
Blocking/non-blocking I/O complete tutorial / 阻塞/非阻塞 I/O[x]core-functional/09 阻塞 IO + 10 非阻塞 IO
Async notification (fasync) / 异步通知[x]core-functional/11 异步通知
Linux device model detailed / 设备模型详解[ ]缺,见 #54
Regmap API detailed guide / Regmap API[ ]缺,见 #54
IIO subsystem framework / IIO 子系统[ ]缺,见 #54
ADC driver development / ADC 驱动[ ]缺,见 #54

📋 P2: 优化体验 (3项)

提升开发效率的高级功能

工具任务 (3项)

任务推荐基础说明
D2-001: menuconfig.shD1-004统一配置入口
D2-002: clean.sh-智能清理工具
D2-006: CI - Docker 构建D1-001自动镜像构建

文档任务 (P2-0: 开发工作流与工具链) - 8项

任务相关文件
[ ] VSCode development workflow / VSCode 开发工作流说明document/tutorial/workflow/
[ ] WSL2 development notes / WSL2 开发注意事项document/tutorial/workflow/
[ ] Docker development workflow / Docker 开发环境说明document/tutorial/workflow/
[ ] Remote-SSH workflow / Remote-SSH 工作流说明document/tutorial/workflow/
[ ] clangd cross-compilation configuration / clangd 交叉编译配置说明document/tutorial/workflow/
[ ] tasks.json command templates / tasks.json 常用任务模板document/tutorial/workflow/
[ ] Host and board file synchronization workflow / 主机与板端文件同步流程document/tutorial/workflow/
[ ] Git workflow for third-party source patches / 第三方源码 patch 的 Git 工作流document/tutorial/workflow/

🔗 相关方向

  • D1:环境完善 - 完成环境配置后,再开发辅助工具
  • D3:示例展示 - 工具完备后,可以更高效地开发示例项目

🔗 相关资源


完善的工具链是高效开发的基础! 🛠️

Built with VitePress