Windows下UEFI环境的搭建
Windows下UEFI环境的搭建
一、环境准备
1. 安装2012及以上VS https://visualstudio.microsoft.com/
2.下载NASM 2.13.03 http://www.nasm.us/,默认安装目录为C:\nasm,同时添加到PATH环境变量中
3. 安装Python2.7.x https://www.python.org/,默认安装目录为C:\Python27,添加到新建的PYTHON_HOME环境变量中
4. 安装openssl http://wiki.overbyte.eu/arch/openssl-1.1.0g-win32.zip,默认安装目录为C:\openssl,添加到PATH环境变量中
5. 安装cygwin64 http://www.cygwin.com/,默认安装目录为C:\cygwin
6. 安装UDK2018 https://codeload.github.com/tianocore/edk2/zip/master ,首先创建一个工作目录,如D:\WorkSpace,将UDK解压到该工作目录下
7. 下载edk2-BaseTools https://codeload.github.com/tianocore/edk2-BaseTools-win32/zip/master
8. 下载openssl配置文件 https://codeload.github.com/openssl/openssl/zip/OpenSSL_1_1_0g
二、UDK配置
1. 在..\edk2-vUDK2018\CryptoPkg\Library\OpensslLib\中,存在一个openssl目录,将其删除后,将openssl-OpenSSL_1_1_0g.zip解压到该目录下并重命名为openssl
2. 将edk2-BaseTools-win32-master.zip解压到..\uefi-workspace\edk2-vUDK2018\BaseTools\中,并重命名为Win32
3. 在..\uefi-workspace\edk2-vUDK2018\Conf\target.txt中修改TOOL_CHAIN_TAG为当前工具版本,如TOOL_CHAIN_TAG = VS2012x86
4. 在..\uefi-workspace\edk2-vUDK2018\目录下,可修改edksetup.bat来修改一些软件的安装位置
三、运行efi文件
1. 打开cmd,到..\uefi-workspace\edk2-vUDK2018\目录下,先设定python位置,再进行初始化操作,最后进行build操作
>>set PYTHON_HOME=C:\Python27
>>edksetup.bat --nt32
2. 初始化结束后,进行build构建efi文件;在build结束后,..\uefi-workspace\edk2-vUDK2018\目录下会生成Build文件夹,..\Build\NT32IA32\DEBUG_VS2012x86\IA32\中存在一些初始的efi文件,如HelloWorld.efi文件
>>build
3.利用命令打开NT32模拟器(或者在..\uefi-workspace\edk2-vUDK2018\Build\NT32IA32\DEBUG_VS2012x86\IA32\目录下运行SecMain.exe),输入fs0:,然后输入efi文件名,运行efi文件(默认目录为..\uefi-workspace\edk2-vUDK2018\Build\NT32IA32\DEBUG_VS2012x86\IA32\)
>>build run
>>fs0:
>>HelloWorld.efi
4.编写efi文件(转载 https://blog.csdn.net/yunfenglw/article/details/46946907)
Windows下UEFI环境的搭建的更多相关文章
- Windows下Python环境的搭建
我刚开始接触Python没多久,当然这也是为初学者来更好的去入门Python,我电脑上既跑着Windows也跑着Red Hat的Linux,相比较而言,开发我还是更青睐于Linux系统,很多开发工具红 ...
- Windows下EDK2环境的搭建以及经典的程序设计Print Hello World !-----(Linux下的待后续熟练了再更新)
很久没有更新博客了,之前的博客末尾有提到过要写有关EDK2环境搭建的博客,现在就是完成的时候了,后续博客更新会比较规律(大概每周一篇?) 本人博客仅仅发表于博客园,本人主页为 http ...
- windows下wordpress环境快速搭建
所需要软件下载网址:https://bitnami.com/ 安装使用说明网址:http://www.websoft9.com/wp-content/plugins/documente/documen ...
- windows下android环境的搭建:完成后添加android其他版本
JDK: jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008.exe Eclipse:Eclipse3.7.1 Android sdk:android-sd ...
- Windows下visual studio code搭建golang开发环境
Windows下visual studio code搭建golang开发环境 序幕 其实环境搭建没什么难的,但是遇到一些问题,主要是有些网站资源访问不了(如:golang.org),导致一些包无法安装 ...
- Windows下的环境搭建Erlang
Windows下的环境搭建 Erlang 一.安装编译器 在http://www.erlang.org/download.html下载R16B01 Windows Binary File并安装. 二. ...
- Redis在windows下的环境搭建
Redis在windows下的环境搭建 下载windows版本redis,,官方下载地址:http://redis.io/download, 不过官方没有Windows版本,官网只提供linux版本的 ...
- 在Windows下使用Hexo+GithubPage搭建博客的过程
1.安装Node.js 下载地址:传送门 去 node.js 官网下载相应版本,进行安装即可. 可以通过node -v的命令来测试NodeJS是否安装成功 2.安装Git 下载地址:传送门 去 Git ...
- 记一次Linux下JavaWeb环境的搭建
今天重装了腾讯云VPS的系统,那么几乎所有运行环境都要重新部署了.过程不难懂,但是也比较繁琐,这次就写下来,方便他人也方便自己日后参考参考. 我采用的是JDK+Tomcat的形式来进行JavaWeb初 ...
随机推荐
- J.U.C并发框架源码阅读(十六)FutureTask
基于版本jdk1.7.0_80 java.util.concurrent.FutureTask 代码如下 /* * ORACLE PROPRIETARY/CONFIDENTIAL. Use is su ...
- HihoCoder 1629 Graph (2017 ACM-ICPC 北京区域赛 C题,回滚莫队 + 启发式合并 + 可撤销并查集)
题目链接 2017 ACM-ICPC Beijing Regional Contest Problem C 题意 给定一个$n$个点$m$条边的无向图.现在有$q$个询问,每次询问格式为$[l, ...
- SSO [ OAuth2.0 ]
1) SSO英文全称Single Sign On,单点登录. SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统. 它包括可以将这次主要的登录映射到其他应用中用于同一个用户的 ...
- CentOS 6.9安装类型选择(Basic Server/Web Server)
Desktop :基本的桌面系统,包括常用的桌面软件,如文档查看工具. Minimal Desktop:基本的桌面系统,包含的软件更少. Minimal:基本的系统,不含有任何可选的软件包. Basi ...
- Redis的数据类型之String
Redis主要支持的数据类型有5种:String ,Hash ,List ,Set ,和 Sorted Set. Redis数据类型String string类型在redis中是最常见的类型,valu ...
- EasyMvc入门教程
EasyMvc 希望实现的目标:模块化,快速简单化,满足80%的常见需求.基于.Net Core 2.0.5开发.开发环境:VS2017,运行环境支持Window/Linux. 相关链接: 演示地址: ...
- 五个常用的Linux监控脚本代码
bash中 2>&1 & 的解释 1.首先,bash中0,1,2三个数字分别代表STDIN_FILENO.STDOUT_FILENO.STDERR_FILENO,即标准输入(一般 ...
- django前后端数据传输学习记录
在开发过程中会遇到这样的情况 后台返回了一堆的数据,是一个列表 例如 datas = [{"a":1, "b":2}, {"c": 3,&q ...
- python数据类型学习心得
python中的数据类型 数字:整型,长整形,布尔型,浮点型,复数 整型:普通的整数,在32位的操作系统中范围在-2的-32次方到2的32次方-1,64位的操作系统则为-2的64次方到2的64次方-1 ...
- 泳池水面fresnel 的近似替代
vs float4 ep = TBMultiply(ModelViewMatrix, FinalPosition); DistFromEye.x = TBSaturate( 10.0 + ep.z / ...