如何Build UDK2018


如何Build UDK2018

GitHub有UDK2018的build教學 , windows環境的


我試著用上面的步驟做看看,寫成一份簡單的中文SOP看看

A. 設定編譯環境
  1. 安裝 VisualStudio2015 , 確定AMD64 complier 有被選擇安裝
  2. 下載 NASM2.12.01 或是更新版的 (http://www.nasm.us/) , 並且安裝到 C:\Nasm 下, 確定C:\Nasm 有加到環境變數 'PATH'
  3. 下載 Python 2.7.x (https://www.python.org/), 以便去build BaseTools , 預設安裝路徑是 C:\Python27
  4. 下載"預先編譯"的Openssl 二進位檔 (https://wiki.openssl.org/index.php/Binaries) , 在  "Third Party OpenSSL Related Binary Distributions"的列表去尋找windows的二進位檔 , 去第三方的網址去下載 Windows X64 和 X32 最新的二進位檔. 下載並解壓到 C:\Openssl , 並加入 C:\Openssl 到環境變數'PATH'

B. 創造 UDK2018的全程式碼目錄
  1. 在 build machine 創造一個工作目錄 , 像是  C:\MyWorkspace
  2. 下載 UDK2018 release.zip (https://github.com/tianocore/edk2/releases/tag/vUDK2018) , 並請解壓縮到工作目錄 , 例如 C:\MyWorkspace
  3. 或是 , 用 GutHub 來 Checkout vUDK2018Tag , 用以下的Git command
           a. 執行  
        git clone https://github.com/tianocore/edk2.git vUDK2018
           b. 到 vUDK2018 目錄 , 執行  
        git checkout tags/vUDK2018 -b vUDK2018
           c. 把在 vUDK2018 的所有檔案和目錄搬到  C:\MyWorkspace

C. 產生 OpenSSL* Crypto Library
      1. 打開  C:\MyWorkspace\CryptoPkg\Library\OpensslLib\OpenSSL-HOWTO.txt , 並且依照步驟去安裝OpenSSL* 給UEFI builing. 在這一版 , 請用 OpenSSL-1.1.0g ,                從 https://github.com/openssl/openssl/archive/OpenSSL_1_1_0g.zip 下載 ,
          解壓縮到  "C:\MyWorkspace\CryptoPkg\Library\OpensslLib ", 並且 更名它的目錄名稱為 openssl

D. 編譯 BaseTools :
  1. 打開 Visual Studio 命令列 , 打入 cd :\MyWorkspace 去進入工作環境
  2. 編譯 C-base 的 Basetools 原始碼
      set PYTHON_HOME=C:\Python27
      edksetup.bat Rebuild

E: 編譯步驟 ***NT32***
     1. 打開 Visual Studio 命令列 , 打入 cd :\MyWorkspace 去進入工作環境
     2. 用 edksetup.bat 去初始化工作環境 , 
         edksetup --nt32
     3. 打以下的coomand 去 build Nt32 platform , 
         build -t VS2015x86
     4. 成功完成以上的話 , 會有一個 UEFI Application "HelloWorld.efi" 
         在"C:\MyWorkspace\Build\NT32IA32\DEBUG_VS2015x86\IA32" 目錄


P.S : 
在嘗試想要 run 模擬器時, 遇到 SecMain 找不到的問題,
發現 SecMain 的確有 Build 出來 
(D:\SCT\edk2-vUDK2017\Build\NT32IA32\DEBUG_VS2015x86\IA32\SecMain.exe)

後來改了 target.txt , 
TOOL_CHAIN_TAG  = VS2015x86
就可以了

跑模擬器的三步驟

  1.  edksetup.bat => 設定環境
  2.  edksetup.bat Rebuild => 先編譯 BaseTools 
  3.  edksetup.bat --nt32   => 編譯 Nt32Pkg 的 code
  4.  build run => 最後會跑出模擬器 (如下圖)

留言

這個網誌中的熱門文章

如何在VS2022 Community 簡要的設定UDK2018的環境

自製讀取 H 檔案並找出 define 的程式