2012年10月29日 星期一

How To Build EDK & EDK II Environment In Easy Way

如何編譯EDK

請參考 How To Compile UDK2014如果你是要編譯 UDK2014。
請參考 How To Compile UDK2015如果你是要編譯 UDK2015。

image
(D:\為例)
安裝Windows Driver KitC:\WINDDK\3790.1830
Edk 1.06解壓縮到D:\
EfiShell 1.06解壓縮到D:\Edk\Other\Maintained\Application\UefiShell資料夾下
image

修改D:\Edk\Sample\LocalTools.env 確認NASMDDK路徑

image
image


編輯D:\Edk\Sample\Platform\Nt32\Build\Config.env
image


用系統管理完開啟命令提示字元
image

切換目錄到D:\Edk\Sample\Platform\Nt32
輸入SET EDK_SOURCE=D:\Edk
build編譯
image

編譯成功畫面
image

切換到D:\Edk\Sample\Platform\Nt32\uefi\IA32
輸入secmain.exe
image
image
image
image

如何編譯EFI_Toolkit

解壓縮EFI_Toolkit_2.0.0.1 D:\Edk\Sample\Platform
修改D:\Edk\Sample\Platform\EFI_Toolkit_2.0\build.cmdSDK_INSTALL_DIR路徑

image

輸入build
輸入nmake編譯 
image

編譯完成畫面
image

輸出EFI檔在D:\Edk\Sample\Platform\EFI_Toolkit_2.0\build\em64t\bin
如果要編譯成其他檔案可以更改build.cmd裡的SDK_BUILD_ENV
image

想要決定編譯哪幾個檔案可以修改D:\Edk\Sample\Platform\EFI_Toolkit_2.0\apps\apps.mak

想要修改WINDDK路徑的話
D:\Edk\Sample\Platform\EFI_Toolkit_2.0\build\em64t\sdk.env


如何編譯EDKII

先安裝Tortoise SVN取得EDKII Source Code
安裝完成後在你要的目錄,點右鍵SVN Checkout
image
image
image


系統管理員開啟命令提示字元
輸入edksetup.bat
image

因為我是用Visual Studio 2010
必須修改Conf\target.txt 裡的TOOL_CHAIN_TAG = 2010
image

再輸入Build就會編譯了
image
image


編譯完成畫面
image

直接輸入build run
或是執行D:\EDKII\edk2\Build\NT32\DEBUG_VS2010\IA32\secmain.exe
image

模擬器開啟畫面
image
image
這裡有說明EDK II各個Package的內容
如果要切換不同Package
可以修改Conf\target.txt裡的
ACTIVE_PLATFORM       = Nt32Pkg/Nt32Pkg.dsc
ACTIVE_PLATFORM       = MdePkg/MdePkg.dsc