Windows10搭建EDK2环境

本文详细介绍了在Windows 10 x64系统中搭建EDK2(EFI Development Kit 2)开发环境的步骤,包括Visual Studio 2017、Python、IASL、NASM的安装,以及环境变量配置和EDK2源码的下载与编译。过程中遇到的环境变量缺失、nmake错误、文件扩展名显示等问题及其解决方案也被详细记录。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



有问题请留言或mail至nosilver@protonmail.com


一、注意事项

环境准备本次使用Win10 x86_64位

二、EDK2环境搭建过程

1.配置软件环境

●Visual Studio 2017 Professional

●使用迅雷下载下述链接
●ed2k://|file|mu_visual_studio_professional_2017_version_15.3_x86_x64_11100064.exe|1069960|900673A59F0798822207F72FAA0DA6A9|/
● 安装时选择C++桌面环境
● 需在线下载5G左右的包
● 下载路径使用默认路径
● 本次使用Visual Studio 2017 专业版 Professional 产品

● Python 3.7.8

● 安装到C:\Python
● 下载python3.7.8
(地址:https://www.python.org/downloads/windows/)

在这里插入图片描述
● 注意:安装的目录名不要有空格。

● IASL

● 下载地址:https://acpica.org/sites/acpica/files/iasl-win-20200717.zip
● 解压到C:\IASL

在这里插入图片描述

● NASM

● 官网版本库:https://www.nasm.us/pub/nasm/releasebuilds/?C=M;O=D
● 下载地址:https://www.nasm.us/pub/nasm/releasebuilds/2.15.02/win64/
● 安装到C:\NASM

在这里插入图片描述

● EDK 2源码

● 下载源码 :https://github.com/tianocore/edk2/tags
● 本次使用的是:edk2-stable202002版本
● 解压到自己的工作目录
● 以本人为例
● C:\Users\edk2

2. 配置环境变量

● 配置Path变量
在这里插入图片描述

● 增加PYTHON_HOME
在这里插入图片描述

● 开始编译
● cmd中切换至ekd代码目录
● C:\Users>cd edk2\edk2-edk2-stable202002
● C:\Users\edk2\edk2-edk2-stable202002>
● 设置PYTHON_HOME
● set PYTHON_HOME=C:\Python
● 执行以下命令
● C:\Users\edk2\edk2-edk2-stable202002> edksetup.bat Rebuild
● ~~C:\Users\edk2\edk2-edk2-stable202002> ~~edksetup.bat
● ~~C:\Users\edk2\edk2-edk2-stable202002> ~~notepad Conf\target.txt
● 修改原始成为 TOOL_CHAIN_TAG = VS2017 同时可修改IA32为X64
在这里插入图片描述

● 保存target.txt
● C:\Users\edk2\edk2-edk2-stable202002> build
● 编译成功后,你应该会看到如下信息:
在这里插入图片描述

3. 运行

C:\Users\edk2\edk2-edk2-stable202002>cd Build\EmulatorIA32\DEBUG_VS2017\IA32
C:\Users\edk2\edk2-edk2-stable202002>\Build\EmulatorIA32\DEBUG_VS2017\IA32>WinHost.exe

● 也可以直接双击该WinHost.exe文件
● 图为成功运行在这里插入图片描述


4.部分报错

2021/10/26 尝试再次在搭建EDK2环境

尝试多个版本的包,使用之前的环境均能通过build
更换磁盘后,安装Windows10专业版(UEFI安装) 配置与此博客相同的软件环境
一开始未能通过Rebuild 后多次检查发现为环境变量问题
python scrip未添加至环境变量
产生错误nmake fatal error u1077
后重配软件与环境变量后解决
target配置为X64 VS2017在这里插入图片描述
在这里插入图片描述

2021/11/1 再次尝试搭建完整版EDK2

在windows10专业版上按照之前的配置搭建失败 后定位至visual studio 2017专业版下
C:\Program Files(x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64路径下
nmake与cl无.exe后缀名

在这里插入图片描述

选择查看 勾选 文件拓展名 后成功编译

Build错误的问题
未将软件放在C盘根目录下

GOP Window不识别符号的问题
在切换输入法后fs0:的:无法输入窗口,后发现为输入法中文问题,需配置微软eng输入法(配置输入法后小写可回显)
开启大小写解决建议切换一下大小写 切换大小写后小写不可回显 切换大小写后回显功能也自动开启了

GOP Window无法互动的问题
Windows输入法与该程序不兼容,更换搜狗输入法后解决

EDK2 rebuild错误的问题
Visual studio版本号不对
本机使用Visual Studio 2017专业版成功安装

EDK2 版本号不对
建议更换为edk2-edk2-stable202002
下载链接:https://codeload.github.com/tianocore/edk2/zip/refs/tags/edk2-stable202002

其他问题可能为网络问题或硬件问题
下载Visual Studio失败主要为网络问题

注意事项

请注意各个版本之间的软件对应关系,软件需安装至c盘根目录下(出现过c盘内非根下编译错误)

### 如何在特定操作系统上搭建EDK2开发环境 #### 1. 开发环境概述 EDK II 是一个用于开发 UEFI 固件的开源框架,其开发环境可以在多种操作系统下进行配置。通常情况下,在 Windows 或 Linux 上都可以完成 EDK II 的编译和测试工作。 --- #### 2.Windows 系统上搭建 EDK II 开发环境 ##### 工具准备 - **Visual Studio**:推荐安装最新版本的 Visual Studio Community Edition[^1]。 - **Python**:确保 Python 版本为 3.x,并将其路径加入系统的 `PATH` 变量中[^4]。 - **Git**:用于克隆 EDK II 源码仓库。 ##### 步骤说明 下载并解压最新的 EDK II 源码后,设置必要的环境变量: ```bash set WORKSPACE=<path_to_edkii> cd %WORKSPACE% edksetup.bat Rebuild ``` 接着可以通过调用 `Build` 脚本来生成目标平台所需的固件镜像文件: ```batch build -a X64 -t VS2019 -p OvmfPkg/OvmfPkgX64.dsc ``` --- #### 3. 在 Linux 系统上搭建 EDK II 开发环境 Linux 平台提供了更灵活的方式来进行 EDK II 编译与调试操作。以下是具体方法: ##### 安装依赖库 对于基于 Debian/Ubuntu 的系统而言,需先执行以下命令来获取所需软件包: ```bash sudo apt-get update && sudo apt-get install -y \ git build-essential iasl nasm python3-pip uuid-dev libssl-dev pip3 install --upgrade pyyaml cryptography pyparsing ``` ##### 获取源代码 利用 Git 将官方存储库拉取至本地目录: ```bash git clone https://github.com/tianocore/edk2.git edk2 cd edk2 ``` 初始化子模块以便于访问额外资源组件: ```bash git submodule update --init --recursive ``` ##### 配置与构建项目 创建 `.env` 文件或者直接运行脚本来设定初始参数: ```bash source edksetup.sh ``` 之后按照需求指定架构类型及其他选项启动正式构建流程: ```bash make -C BaseTools build -a X64 -b RELEASE -t GCC5 -p OvmfPkg/OvmfPkgX64.dsc ``` 上述指令会依据所选 DSC 描述文档生产对应格式的目标输出物。 --- #### 4. 使用 QEMU 测试生成的 EFI 应用程序 一旦成功完成了镜像制作过程,则可通过虚拟化技术验证实际效果。例如借助 QEMU 来加载之前提到过的 OVMF firmware image 进行交互式探索: ```bash qemu-system-x86_64 -bios <OVMF.fd> -m 2G -vnc :0 & ``` 此时应该能看到进入了一个具备 Shell 功能界面的位置;在此处输入 ls 查看当前可用分区列表及其内部结构详情后再尝试加载自定义应用程序实例加以检验功能是否正常运作良好。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

nosilver0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值