EDK2编译与OVMF编译

新版EDK修正了许多bug并且已经支持VS2015,这里就是在VS2015的环境下操作的。
首先下载EDK2
EDK2官方下载
这里下载的EDK2一开始式没有Win32编译环境的,需要自己编译:
打开CMD,定位到EDK2的BaseTools下,输入get_vsvars,执行完后输入vsvars32执行,这两部主要是配置VS编译环境。
除此之外要想编译还需要安装PYTHON27以及cx_Freezer(用34会报错,可能暂时不支持),两者将py脚本编译为Win32可执行文件。
PYTHON下载
cx_Freezer下载
注意两者要版本和位数都相同。
然后设置环境变量(这里因人而异):
set PYTHON_HOME=C:\Python27
set PYTHON_FREEZER_PATH=C:\Python27\Scripts
然后还要设置BASE_TOOLS_PATH和EDK_TOOLS_PATH为BaseTools目录路径(两者一样)
之后就可以编译了:
toolsetup Rebuild
等待一段时间后,编译完毕,会在BaseTools\Bin\Win32下生成Windows编译工具。
然后将当前目录切回EDK目录下,执行edksetup –nt32,这里式配置Windows下一系列环境变量。
在编译OVMF之前还需要下载两个工具NASM和ASL,前者是汇编工具后者是ACPI Language编译工具。
NASM下载
IASL下载
安装完成后到Conf目录下的tools_def文件将两者的初始目录配置为安装目录,为避免麻烦可以直接将下载的iasl解压到C:\ASL目录下,然后在tools_def文件的末尾将*_*_*_NASM_PATH后面的路径改为NASM的安装目录。
OK,下面开始编译OVMF,刚刚执行edksetup –nt32后配置了环境变量后,输入编译命令:
build -p OvmfPkg\OvmfPkgX64.dsc -b NOOPT
等待一段时间后,OVMF就编译完成了。

你可能感兴趣的:(Win32)