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环境的搭建的更多相关文章

  1. Windows下Python环境的搭建

    我刚开始接触Python没多久,当然这也是为初学者来更好的去入门Python,我电脑上既跑着Windows也跑着Red Hat的Linux,相比较而言,开发我还是更青睐于Linux系统,很多开发工具红 ...

  2. Windows下EDK2环境的搭建以及经典的程序设计Print Hello World !-----(Linux下的待后续熟练了再更新)

    很久没有更新博客了,之前的博客末尾有提到过要写有关EDK2环境搭建的博客,现在就是完成的时候了,后续博客更新会比较规律(大概每周一篇?) 本人博客仅仅发表于博客园,本人主页为         http ...

  3. windows下wordpress环境快速搭建

    所需要软件下载网址:https://bitnami.com/ 安装使用说明网址:http://www.websoft9.com/wp-content/plugins/documente/documen ...

  4. windows下android环境的搭建:完成后添加android其他版本

    JDK: jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2008.exe Eclipse:Eclipse3.7.1 Android sdk:android-sd ...

  5. Windows下visual studio code搭建golang开发环境

    Windows下visual studio code搭建golang开发环境 序幕 其实环境搭建没什么难的,但是遇到一些问题,主要是有些网站资源访问不了(如:golang.org),导致一些包无法安装 ...

  6. Windows下的环境搭建Erlang

    Windows下的环境搭建 Erlang 一.安装编译器 在http://www.erlang.org/download.html下载R16B01 Windows Binary File并安装. 二. ...

  7. Redis在windows下的环境搭建

    Redis在windows下的环境搭建 下载windows版本redis,,官方下载地址:http://redis.io/download, 不过官方没有Windows版本,官网只提供linux版本的 ...

  8. 在Windows下使用Hexo+GithubPage搭建博客的过程

    1.安装Node.js 下载地址:传送门 去 node.js 官网下载相应版本,进行安装即可. 可以通过node -v的命令来测试NodeJS是否安装成功 2.安装Git 下载地址:传送门 去 Git ...

  9. 记一次Linux下JavaWeb环境的搭建

    今天重装了腾讯云VPS的系统,那么几乎所有运行环境都要重新部署了.过程不难懂,但是也比较繁琐,这次就写下来,方便他人也方便自己日后参考参考. 我采用的是JDK+Tomcat的形式来进行JavaWeb初 ...

随机推荐

  1. Codeforces 954I Yet Another String Matching Problem(并查集 + FFT)

    题目链接  Educational Codeforces Round 40  Problem I 题意  定义两个长度相等的字符串之间的距离为:   把两个字符串中所有同一种字符变成另外一种,使得两个 ...

  2. java数组集合

    一.ArrayList 1. ArrayList底层采用数组实现,当使用不带参数的构造方法生成ArrayList对象时,实际上会在底层生成一个长度为10的Object类型数组2. 如果增加的元素个数超 ...

  3. 服务的注册与发现Eureka(二)

    1.服务治理概念 在传统rpc远程调用中,服务与服务依赖关系,管理比较复杂,所以需要使用服务治理,管理服务与服务之间依赖关系,可以实现服务调用.负载均衡.容错等,实现服务发现与注册. 2.服务的注册与 ...

  4. 分层图【p2939】[USACO09FEB]改造路Revamping Trails

    Description 约翰一共有N)个牧场.由M条布满尘埃的小径连接.小径可 以双向通行.每天早上约翰从牧场1出发到牧场N去给奶牛检查身体. 通过每条小径都需要消耗一定的时间.约翰打算升级其中K条小 ...

  5. 【面试题】2018年最全Java面试通关秘籍 四套!(无答案)

    http://mp.weixin.qq.com/s/RQMQUufCbwlkAK62y57DAw 第一套:<2018年最全Java面试通关秘籍第一套!> 第二套:<2018年最全Ja ...

  6. 八. 输入输出(IO)操作5.面向字节流的应用

    文件输入输出流 文件输入输出流 FileInputStream 和 FileOutputStream 负责完成对本地磁盘文件的顺序输入输出操作. [例 10-5]通过程序创建一个文件,从键盘输入字符, ...

  7. 七. 多线程编程2.Java线程模型

    Java运行系统在很多方面依赖于线程,所有的类库设计都考虑到多线程.实际上,Java使用线程来使整个环境异步.这有利于通过防止CPU循环的浪费来减少无效部分. 为更好的理解多线程环境的优势可以将它与它 ...

  8. Linux文件名小写的好处(转)

    说明:来自老阮的<为什么文件名要小写>的文章,其实我觉得应该说是<Linux文件名为什么要小写>会更合适些. 一.可移植性 Linux 系统是大小写敏感的,而 Windows ...

  9. 合理配置SQL Server的最大内存

    http://blog.itpub.net/26435490/viewspace-1481846/

  10. A标签几种状况下的样式问题

    正常状态下的a标签是这样的. 去掉下划线只需要在样式里面加入a{text-decoration:none;}或者<a href="www.kanbuchuan.com"sty ...