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

  本人博客仅仅发表于博客园,本人主页为         https://www.cnblogs.com/zedd/

  EDK2我自我感觉是学BIOS的基础,也算是比较好的入门手段之一。虽然是基础,但是确很重要。举个例子来说,真正意义上的国产电脑-龙芯,其BIOS界面以及源代码和EDK2模拟器的BIOS界面及源代码有极大的相似之处,甚至于我感觉龙芯的源代码就是在EDK2的基础上添加了属于自己的内容(因为本人曾经着手参与过龙芯的一个项目,对它有过一些研究)。

  闲话说的有点多了,接下来正式进入主题。下面提及的安装包可以在GitHub上下载,VS编译器和Python安装包可以在百度上下载。

第一步,安装VS编译器

  安装什么版本的编译器应该影响不大,我用VS2015和VS1017都成功搭建出来过编译环境,以VS2015为例:

  安装的时候将  编程语言中的C++勾选上,安装路径默认即可(建议不管搭建什么环境,装软件尽量使用默认路径)

第二部,安装python

  安装python2.7  注意当出现下面界面的时候,选择add python.exe to pach 为entire feature will be installed on local hard dirve

  安装完成之后C盘根目录下Python27文件夹下应该有Scripts

第三步,安装nasm

  将nasm安装到C:\nasm   (注意不要有重复的子文件夹)

第四步,解压isal

  将iasl.zip解压到C:\asl        (注意文件夹名字发生了变化,注意不要有重复的子文件夹)

第五步,设置环境变量

  我的电脑-->属性-->高级系统设置-->高级-->环境变量   按下图配置

  PYTHON_HOME

  PYTHON_FREEZER_PATH

  NASM_PREFIX

第六步,解压EDK2 sourcecode

  将edk2-master.zip解压到C:\edk2     (注意文件夹名字,注意不要有重复的子文件夹)

第七步,搭建环境

  运行cmd  输入

  cd /                          (进入C盘根目录)

  cd  edk2     ( 进入edk2目录)

  edksetup.bat

  cd c:/edk2/BaseTools/Source/C

  nmake all                 (注意中间有空格,nmake all 成功的话会显示以下内容)

  cd  c:/edk2

  build                  (如果build成功,会显示如下内容)

  找到C:\edk2\Build\EmulatorIA32\DEBUG_VS2015x86\IA32目录下的WinHost.exe   双击即可运行32位的模拟器。

  今天就写到这里,环境已经搭建完成,程序设计明天再补充出来。

  

  

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

  1. Windows下UEFI环境的搭建

    Windows下UEFI环境的搭建 一.环境准备 1. 安装2012及以上VS https://visualstudio.microsoft.com/ 2.下载NASM 2.13.03  http:/ ...

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

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

  3. Mac下PHP环境的搭建

    Mac下PHP环境的搭建 目录 Mac下PHP环境的搭建(基于XAMPP) phpmyadmin Mac下PHP环境的搭建(基于XAMPP) 下载XAMPP的Mac版 启动Apache Web Ser ...

  4. myEclipse 8.5下SVN环境的搭建

    myEclipse 8.5下SVN环境的搭建 在应用myEclips 8.5做项目时,svn会成为团队项目的一个非常好的工具,苦苦在网上寻求了一下午,终于整合好了这个环境,在这里简单介绍下,希望能为刚 ...

  5. Ubuntu下hadoop环境的搭建(伪分布模式)

    Ubuntu下hadoop环境的搭建(伪分布模式) 一.必要资源的下载 1.Java jdk(jdk-8u25-linux-x64.tar.gz)的下载 具体链接为: http://www.oracl ...

  6. Windows下Python环境的搭建

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

  7. windows 环境下wamp环境的搭建。

    学php要搭建wamp环境,经常使用的是wampserver,也挺好用的,一键傻瓜式安装,挺省事的.但是程序员都是爱折腾的,总要求要有完美的环境.于是用来用去,觉得还是散装环境最能体现自己的逼格. 其 ...

  8. windows系统下Python环境的搭建及Selenium的安装

    1.首先访问http://www.python.org/download/去下载最新的python版本: 2.下载安装包,一路安装完毕: 3.为计算机添加安装目录搭到环境变量,如图把python的安装 ...

  9. scikit-learn 和pandas 基于windows单机机器学习环境的搭建

    很多朋友想学习机器学习,却苦于环境的搭建,这里给出windows上scikit-learn研究开发环境的搭建步骤. Step 1. Python的安装 python有2.x和3.x的版本之分,但是很多 ...

随机推荐

  1. webstrom IDE 正则替换

    ide:webstrom 其他IDE,可以自行测试. 目的. 将excel的table两列(一般是中文名,英文名,改为Javascript 对象) 从 场所内网IP地址 IP_ADDRESS 源外网I ...

  2. java处理数据库date类型数据

    1.使用Date类和TimeStamp类的valueOf转换时间   Date.valueOf();   TimeStamp.valueOf();   如果这两种转换直接用在sal语句上,那么最外层要 ...

  3. linux下载文件到本地_把linux服务器的文件下到本地windows

    tar -cvf script.tar scriptsz script.tar 文件夹先要打包,并且要指定打包的名字. 具体:  sz/rz命令:  一般来说,linux服务器大多是通过ssh来进行远 ...

  4. python 添加字符串的七种方法

    #使用{}的方法 s1 = 'Hello {}! My name is {}.'.format('World', 'Python猫') print(s1) s2 = 'Hello {0} My nam ...

  5. JXJJOI2018_T2_tank

    题目描述 Lemon最近迷上了一款坦克对战游戏.在这款游戏中,Lemon需要驾驶一辆坦克与敌军对战. 坦克有很多不同的武器,每种武器有各自的特点,而Lemon所要做的就是合适地发射这些武器,对敌军造成 ...

  6. 吴裕雄--天生自然 R语言数据分析:火箭发射的地点、日期/时间和结果分析

    dfS = read.csv("F:\\kaggleDataSet\\spacex-missions\\database.csv") library(dplyr) library( ...

  7. Java volatile修饰字段

     一.关键字volatile修饰字段: 使用特殊域变量(volatile)实现线程同步 volatile:不稳定的:反复无常的:易挥发的: 1.volatile关键字为域变量的访问提供了一种免锁机制, ...

  8. Laravel 队列使用

    触发 任务的触发,主要的实现是在IlluminateFoundationBusDispatchesJobs这个trait中实现的,其只包含两个方法 protected function dispatc ...

  9. 表单验证之JQuery Validate控件

    概述 jQuery Validation Plugin v1.14.0,基于JQuery,官网http://jqueryvalidation.org/ 该插件捆绑了一套有用的验证方法,包括 URL 和 ...

  10. ES6学习笔记(三):教你用js面向对象思维来实现 tab栏增删改查功能

    前两篇文章主要介绍了类和对象.类的继承,如果想了解更多理论请查阅<ES6学习笔记(一):轻松搞懂面向对象编程.类和对象>.<ES6学习笔记(二):教你玩转类的继承和类的对象>, ...