IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> UEFI开发历程1—edk2开发环境的搭建以及在虚拟机QEMU运行OVMF固件 -> 正文阅读

[开发工具]UEFI开发历程1—edk2开发环境的搭建以及在虚拟机QEMU运行OVMF固件

一、开发工具准备(下面是开发环境搭建部分)

1、下载Visual Studio,打开Visual Studio Installer,选择Comunity版本,工作负载的选择如图1-1所示,安装。

?图1-1

备注:重新安装时如需更换如图1-2的下载地址,步骤如下:

(1)Win+R键。

(2)输入”regedit”进入注册表。

(3)打开目录HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup

(4)在如图1-3所示处,更改其中的路径值或删除项。

? ? ? ? ? ?图 1-2? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 图1-3

2 、Python(网址:https://www.python.org/downloads/windows/)

备注:安装路径不允许有空格,其他操作如图1-4所示。

?

图1-4

3、IASL编译器(网址:https://acpica.org/sites/acpica/files/iasl-win-20200717.zip),下载后文件夹改名为asl,复制到D:/UEFI目录下,。

4 、NASM汇编器(网址:https://www.nasm.us/pub/nasm/releasebuilds/2.15.02/win64/ )

进入网页后,如图1-5所示两个皆可,如下载了第一个则安装,下载了第二个则解压,路径为D:/UEFI/nasm。

图1-5

目录

一、开发工具准备(下面是开发环境搭建部分)

二、edk2开发环境的编译

三、在QEMU运行OVMF(下面是OVMF部分)


5、edk2包

edk2可以直接在GitHub下载,也可以用git bash下载。

(1)GitHub下载直接进网页https://github.com/tianocore/edk2下载,点击“Download ZIP”下载,如图1-6所示。解压后改名为edk2,复制到D:/UEFI目录下。

图1-6

?备注:这里下载的edk2是不完整的,在当前网页往下滑动,可以发现下面有模块可供下载,需要下载如图1-7所示的子模块(蓝色字体的是缺失的子模块,如果少了这些模块,编译将会产生很多错误),可以点击进去,将其下载下来,然后顺着路径解压到D:/UEFI/edk2的相应目录下。示例:如图1-7的berkeley-softfloat-3,下载解压后,将里面的东西复制到D:/UEFI/edk2/ArmPkg/Library/ArmSoftFloatLib/ berkeley-softfloat-3目录下。

图1-7

(2)git bash下载

使用git bash需要下载git工具,打开git bash,按以下顺序输入命令:


第一步:git clone https://github.com/tianocore/edk2

第二步:cd edk2

第三步:git submodule update --init

?

下载完后可以输入pwd查看下载的edk2所处的目录,然后复制到D:/UEFI,开发工具的准备告一段落。

二、edk2开发环境的编译

我的工具目录如图1-8所示,应该包含有asl、edk2、nasm。

?图1-8

  1. 环境变量的配置:

(1)右键“此电脑”→“属性”→“高级系统设置”→“高级”→“环境变量”进入如图1-9所示菜单。

(2)配置图1-9蓝色圈所示的系统变量

?图1-9

2.编译

(1)进入edk2目录下的命令窗口执行edksetup.bat rebuild(此处会有错误,但不用管)。

(2)执行edksetup.bat

(3)到D:\UEFI\edk2\Conf目录下打开target.txt,如图1-10所示。

图1-10

(4)修改成图1-11所示的值,X64为64位架构,VS2017为所安装的编译器版本(若为VS2015或者VS2019,则改成相应的值VS2015或者VS2019)。?

?图1-11

(5)回到命令行窗口,输入build,等待编译完成,打开如图1-12路径下的蓝圈处的exe,即可打开UEFI Shell,如图1-13所示。

?图1-12

?图1-13

三、在QEMU运行OVMF(下面是OVMF部分)

1、OVMF的编译

(1)在edk2目录下的命令窗口执行edksetup.bat rebuild(每次重新打开命令窗口都需要执行一次)。

(2)执行Build -p OvmfPkg\OvmfPkgX64.dsc

(4)在如图1-14所示路径下可找到编译出的OVMF.fd。

图1-14

2、在虚拟机QEMU运行OVMF

(1)进入网站QEMU for Windows – Installers (64 bit)

(2)下载如图1-15所示的qemu-w64-setup-xxxxxxxx.exe,随便一个都可以,安装到D:/UEFI。

图1-15

(3)把上一步编译出来的OVMF.fd复制到D:/UEFI/qemu下,

(4在D:/UEFI/edk2目录下新建文件夹QemuDisk,

(5在D:/UEFI/qemu/QEMU目录下新建一个名为setup-qemu-x64.txt,

6)把以下指令复制进setup-qemu-x64.txt,更改文件后缀名为.bat。指令:

qemu-system-x86_64.exe -pflash D:\UEFI\edk2\Build\OvmfX64\DEBUG_VS2017\FV\OVMF.fd -hda fat:rw:D:\UEFI\edk2\QemuDisk

(7)在qemu命令窗口执行setup-qemu-x64.bat,即可在QEMU虚拟机上运行OVMF了。

?

?

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-11-22 12:33:04  更:2021-11-22 12:33:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/24 1:51:39-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计