嵌入式 Linux 入门的第一步,不是改内核,也不是写驱动,而是把开发环境搭起来,把板子稳定连上,把启动日志完整拿到。只要这一步不扎实,后面遇到启动失败、网络不通、应用跑不起来时,就会缺少最基本的排查入口。
一、准备哪些东西
最小开发环境包括:
- 一台 Linux 开发机,Ubuntu、Debian、Arch 都可以。
- 一块开发板或产品板。
- 串口线,常见是 USB 转 TTL。
- 网线或 USB 网络。
- 电源和稳定的供电线。
- 官方 SDK、镜像、烧录工具和文档。
开发机建议优先使用 Linux。Windows 也能开发,但涉及串口、NFS、TFTP、交叉编译和脚本时,Linux 环境更直接。
二、先接串口
串口是嵌入式开发最重要的调试入口。网络不通时还能看串口,系统进不了 shell 时还能看串口,内核 panic 时也通常只能靠串口日志。
常见串口参数:
1 | baudrate: 115200 |
Linux 下可以用:
1 | picocom -b 115200 /dev/ttyUSB0 |
或:
1 | minicom -D /dev/ttyUSB0 -b 115200 |
如果没有权限:
1 | sudo usermod -aG dialout "$USER" |
重新登录后再试。
三、保存启动日志
第一次启动板子时,不要只看屏幕滚动。建议把完整日志保存下来。
1 | picocom -b 115200 /dev/ttyUSB0 | tee boot.log |
日志里重点标记:
- U-Boot 版本。
- DRAM 初始化容量。
- Kernel 加载地址。
- Device Tree 加载地址。
- kernel command line。
- rootfs 挂载方式。
- init 进程启动结果。
后续系统起不来时,可以和这份基准日志对比。
四、让开发机和板子互通
能进 shell 后,下一步是让开发机和板子互通。
板子侧查看网络:
1 | ip addr |
开发机侧:
1 | ping 192.168.1.100 |
如果系统没有 SSH,可以先用串口配合 TFTP、NFS 或 U 盘拷贝文件。
五、建立工作目录
开发机上建议把资料分开:
1 | embedded-work/ |
不要把官方 SDK、自己写的应用、临时日志、烧录镜像混在一个目录。嵌入式项目经常要回溯某次固件对应的日志和配置,目录清晰能省很多时间。
六、第一天要达成什么
第一天不需要写代码,目标是:
- 串口能稳定连接。
- 启动日志能完整保存。
- 能进入 shell。
- 能确认 CPU、内存、rootfs 挂载情况。
- 开发机能和板子互相 ping 通。
- 能把一个文件传到板子。
验收命令:
1 | uname -a |
这些基础做好后,再进入交叉编译和应用开发会顺很多。
- 本文链接: https://blog.hansong.icu/2026/06/26/Embedded_Linux_Series_01_Dev_Environment/
- 版权声明: 本博客所有文章除特别声明外,均默认采用 CC BY-NC-SA 4.0 许可协议。