EDK2開發(fā)環(huán)境支持WIN7您宪,WIN8,WIN8.1奠涌,WIN10宪巨,Linux等操作系統(tǒng),開發(fā)UEFI應(yīng)用和驅(qū)動之前都需要建立開發(fā)環(huán)境溜畅,本文采用的edk版本是edk2-201911捏卓,操作系統(tǒng)是windows10.
具體的開發(fā)環(huán)境搭建如下:
1. 下載EDK2源碼:
下載地址:https://github.com/tianocore/edk2/tree/edk2-stable201911
安裝到:C:\edk2-edk2-stable201911
2. Python 環(huán)境
Python版本:3.7.1,下載地址:https://www.python.org/downloads/release/python-371/
安裝完成后需要配置一下Python的系統(tǒng)環(huán)境變量
3. 下載NASM
NASM 是一款基于80x86 和x86‐64 平臺的匯編語言編譯程序慈格,其設(shè)計初衷是為了實現(xiàn)編譯器程序跨平臺和模塊化的特性.
下載地址:https://www.nasm.us/pub/nasm/releasebuilds/2.14.02/win64/
安裝到:C:\nasm
4. 安裝并配置IASL
IASL用于配置UEFI開發(fā)環(huán)境怠晴,編譯.asl文件及電源接口文件
下載地址:https://acpica.org/sites/acpica/files/iasl-win-20200110.zip
解壓到:C:\asl
5. Visual Studio集成開發(fā)環(huán)境
本次實驗采用的版本是Visual Studio 2017。
在安裝過程中峦椰,需要將C++桌面開發(fā)環(huán)境勾選上進(jìn)行安裝
6. 環(huán)境配置步驟
1)將edk2項目導(dǎo)入VS龄寞,然后在項目窗口上右擊,進(jìn)入edk2項目的窗口命令行汤功,配置環(huán)境變量:
set NASM_PREFIX= C:\nasm\
set IASL_PREFIX = C:\asl\
set WORKSPACE = C:\edk2-edk2-stable201911\
set PACKAGES_PATH = C:\edk2-edk2-stable201911\
set PYTHON_HOME = F:\software\Python\
2)執(zhí)行 edksetup.bat 命令
3)執(zhí)行 edksetup.bat Rebuild
運行完后在BaseTools\Bin目錄下會生成Win32目錄物邑,在Conf\目錄下會生成配置文件
目錄C:\edk2-edk2-stable201911\BaseTools\Bin下:
目錄C:\edk2-edk2-stable201911\Conf下:
4)編輯配置文件Conf/target.txt:
TARGET可以設(shè)置為DEBUG或者RELEASE。TARGET_ARCH在Windows下可以設(shè)置為IA32或X64滔金。TOOL_CHAIN_CONF表示編譯工具鏈色解,根據(jù)計算機(jī)安裝的編譯器選擇即可。本計算機(jī)安裝VS2017餐茵,所以就設(shè)置為VS2017科阎。MAX_CONCURRENT_THREAD_NUMBER表示編譯期間的最大線程數(shù),設(shè)置為計算機(jī)的線程數(shù)即可
5)執(zhí)行build命令忿族,build成功后會生成對應(yīng)的結(jié)果文件夾锣笨。本次實驗構(gòu)建采用的是X64
Build成功后,在目錄EmulatorX64\DEBUG_VS2017\X64下找到WinHost.exe可執(zhí)行程序道批,雙機(jī)運行出現(xiàn)如下畫面