嗨我是k66,呈上篇繼續安裝edk2與QEMU環境。下一篇就會進入程式碼了,你們不繼續看我會哭喔!
C:\edk2space\edk2\
|-k66run1.bat
|-edk2setup.bat
|-build
|-Conf\target.txt
|-Build\
ACTIVE_PLATFORM = EmulatorPkg/EmulatorPkg.dsc # 先試EmulatorPkg,可以編譯後改成OvmfPkg/OvmfPkgX64.dsc
TARGET = DEBUG
TARGET_ARCH = X64
TOOL_CHAIN_TAG = VS2019 # Windows是VS2019,Linux是GCC
chcp 65001
set WORKSPACE=C:\edk2space\edk2
set PYTHON_HOME=C:\Python311
set NASM_PREFIX=C:\NASM\
set CLANG_HOST_BIN=n
set CLANG_BIN=C:\NASM\
set CYGWIN_HOME=%WORKSPACE%\BaseTools\Bin\CYGWIN_NT-5.1-i686
set EDK_TOOLS_PATH=%WORKSPACE%\BaseTools
set CONF_PATH=%WORKSPACE%\Conf
k66run1.bat // 先設定edk2環境
edksetup.bat rebuild // prebuild的概念,缺什麼就看這指令, 它會報錯顯示缺什麼
build // 上一行沒報錯就執行build建置target, 成功會秀done字樣, build成功就能在C:\edk2space\edk2\Build\EmulatorX64\DEBUG_VS2019\X64\找到各種efi,其中我們先以UiApp.efi為例。
將OVMF.fd放至C:\QEMU(C:\edk2space\edk2\Build\OvmfX64\RELEASE_VS2019\FV\OVMF.fd)
設定k66run2.bat(QEMU workspace)
C:\QUEMU\
|-Test\
|-k66run2.bat
k66run2.bat
.\qemu-system-x86_64.exe -bios "OVMF.fd" -hda fat:rw:C:\QEMU\Test -net none
k66run2.bat // 即可進入QEMU畫面,並執行:
fs0: // 從Shell進入fs0:,並執行:
ls // 顯示目錄頰下所有檔案
UiApp.efi // 執行這支UiApp.efi會出現畫面如下
恭喜完成繁瑣安裝流程!下一篇進入程式碼!
請試著將其他EmulatorX64內的efi放至C:\QEMU\Test\,觀察結果。
某些efi被執行後會出現This is not an application,想想看為什麼?