EDKII环境在Windows系统上的配置

来源:互联网 发布:高中视频教学软件 编辑:程序博客网 时间:2024/05/18 18:45

Windows下配置EDKII环境

目前按照以下步骤已成功在windows7和Windows10上安装,需要VS2013,python27

1.Internet Proxy配置(此步骤可省略不做):

$ git config --global https.proxy <proxyname>.domain.com:<port>$ git config --global http.proxy <proxyname>.domain.com:<port>

2.在github下载或使用git工具clone
2.1、下载edk2-master: https://github.com/tianocore/edk2解压放在C:\edk2

2.2、下载
edk2-BaseTools-win32-master:https://github.com/tianocore/edk2-BaseTools-win32

解压放在C:\Win3下,再把Win32拷贝到C:\edk2\BaseTools\Bin下(这是Intel提供的已经编译好的BaseTools的一部分,如果做了此步骤可忽略Compiler Tools里面所有操作)

3. Built

3.1安装nasm

下载https://github.com/tianocore/tianocore.github.io/wiki/Nasm-Setup
安装包nasm-2.13.01-installer-x64.exe,安装到C:\nasm下,配置环境变量如下图;如果使用此方法配置环境变量时在cmd内输入无效时,也可将其配置到系统的path中,配置成功时显示如下:

3.2安装ASL
https://acpica.org/downloads/binary-tools
点击iASL compiler and Windows ACPI tools(ZIP 2.0 MB)下载即可,把下载的zip文件加压到C:\ASL下。

3.3.Setup edk(输入命令edksetup,如果是想要build Nt32模拟平台,可使用edksetup –nt32)
目的: Setup build shell environment 在工作目录下在命令行下运行环境设置脚本

3.4 输入notepad Conf\targe.txt

可通过配置Conf/target.txt和tools_def.txt文件来指定工具链将指定的包或模块编译成目标平台代码。
可以输入notepad Conf\targe.txt,对target.txt文件里面的等号右边的内容修改(主要作用:配置我们当前要编译的包和使用的相应工具链VS2013,如下两个内容)
ACTIVE_PLATFORM = MdeModulePkg/MdeModulePkg.dsc
TOOL_CHAIN_TAG = VS2013x86
(/s代表某个目录下特定文件)

3.5 bulid

我们可以只在命令行中运行“build”命令即可,会读取Conf/target.txt文件下这些变量的作为默认编译参数。这种方式一定程度上简化了编译过程,不必每次都指定当前要编译的模块和目标平台代码,但可能也会缺少下面第二种方式的灵活性。

3.6 此步骤可以取代3.4和3.5两部分

我们可以使用build –h查看build的全部命令,使用命令的形式配置当前要编译的包和工具链
build -p Nt32Pkg\Nt32Pkg.dsc -t VS2013x86 -b DEBUG -a IA32
其中 –p 表示要编译的包,通过.dsc文件指定要编译的package
-t 工具链,指定编译工具
-b 选择编译成DEBUG还是RELEASE
-a 选择目标平台架构,一般有IA32,X64,IPF,ARM,AARCH64,EBC
Build成功后会打印出—Done—

3.7 build成功后,我们就可以run一下看结果了
命令 build -p Nt32Pkg\Nt32Pkg.dsc -t VS2013x86 -b DEBUG -a IA32 run
运行结果如下:

4 安装过程常见问题
4.1 出现找不到C:\program.h,请检查是否成功安装了nasm,其环境变量是够配置正确,如下表示安装正确。

4.2 一般如果操作系统是32位,会出现C:\Program Files (x86)\Windows Kits\8.0\bin\x86\rc.exe找不到的情况,这时候可以新建一个这样的目录,把C:\Program Files (x86)\Windows Kits文件拷贝过来,一般里面有8.0和8.1两个文件夹,重新build,正常情况下可以跑通,如果还是不行,把原8.1命名为8.0,此时基本就可以成功了。

4.3 build成功后,生成的文件在edk2\Build下面,在下一次运行时我们可以在命令行下进入到edk2目录下,执行build -p Nt32Pkg\Nt32Pkg.dsc -t VS2013x86 -b DEBUG -a IA32 run
,也可直接进入到..\edk2\Build\NT32IA32\DEBUG_VS2013x86\IA32目录下双击SecMain.exe运行

4.4 有时候也会提醒c1.exe文件找不到的错误,请确保路径正确: C:\Program Files\Microsoft Visual Studio 12.0\VC\bin\c1.exe

原创粉丝点击