前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[077]uboot编译及QEMU调试

[077]uboot编译及QEMU调试

作者头像
王小二
发布2023-02-10 09:40:30
1.7K0
发布2023-02-10 09:40:30
举报

背景

最近在看一些uboot相关的内容,有一些疑惑,但是暂时我又没有硬件板子,我就准备用QEMU模拟调试。

uboot是什么东西?

uboot(universal bootloader)是一种可以用于多种嵌入式CPU得BootLoader程序,换言之,uboot是bootloader的一个子集

本人电脑系统

Win10 + WSL2 (ubuntu 20.04) Win10安装QEMU,WSL2用来编译uboot镜像

一、WSL2编译uboot镜像

1.1 下载uboot代码

代码语言:javascript
复制
git clone https://github.com/u-boot/u-boot

1.2 编译uboot源码

因为我要编译arm64,所以用这个指令,缺少的工具链,请自行安装sudo apt-get install gcc-aarch64-linux-gnu

代码语言:javascript
复制
export CROSS_COMPILE=aarch64-linux-gnu-
make qemu_arm64_defconfig
make

编译后的uboot代码根目录会有uboot.bin这个二进制程序,也就是uboot镜像了。

二、Win10安装QEMU

1.1 下载QEMU

window x64 qemu包下载地址:https://qemu.weilnetz.de/w64/

1.2 安装QEMU

双击安装即可,最重要的是记住安装选项,打开System emulation中的下落项选择需要模拟的系统x86_64,arm,riscv64,riscv32等系统,尽量安装默认,全部勾选即可

1.3 配置环境变量

把QEMU的安装路径添加到系统的环境变量中。

1.3 在Ubuntu安装QEMU

如果你是单独ubuntu系统,可以参考这个链接https://blog.csdn.net/Q1302182594/article/details/52134673

三、QEMU启动uboot

执行一下命令即可,u-boot.bin就是编译uboot生成的二进制文件。

代码语言:javascript
复制
qemu-system-aarch64.exe -machine virt -nographic -cpu cortex-a57 -bios u-boot.bin

启动后的界面,类似linux的控制台,我尝试执行了一下ls

总结

接下来你就可以方便的修改调试uboot的代码了,学习uboot的代码挺有意思的。

参考资料

https://u-boot.readthedocs.io/en/latest/build/index.html https://u-boot.readthedocs.io/en/latest/board/emulation/qemu-arm.html

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-02-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
  • 本人电脑系统
  • 一、WSL2编译uboot镜像
    • 1.1 下载uboot代码
      • 1.2 编译uboot源码
      • 二、Win10安装QEMU
        • 1.1 下载QEMU
          • 1.2 安装QEMU
            • 1.3 配置环境变量
              • 1.3 在Ubuntu安装QEMU
              • 三、QEMU启动uboot
              • 总结
              • 参考资料
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档