はわわーっ

はわわわわっ

edk2のビルドめも

メモ。

参考

パッケージとか

% sudo apt-get install -fy build-essential uuid-dev nasm

EDK2を取ってきてビルド。HEADでやったらMdeModulePkgだとビルド失敗してた。とりあえずAppPkgあればいいのかもってことで、AppPkgをターゲットにした。

% git clone http://github.com/tianocore/edk2
% cd edk2
% make -C BaseTools
% . ./edksetup.sh
% vim Conf/target.txt
% diff -u0 Conf/target.txt{.orig,}
--- Conf/target.txt.orig	2015-06-07 15:29:21.981669622 +0900
+++ Conf/target.txt	2015-06-07 15:30:00.581667584 +0900
@@ -26 +26 @@
-ACTIVE_PLATFORM       = Nt32Pkg/Nt32Pkg.dsc
+ACTIVE_PLATFORM       = AppPkg/AppPkg.dsc
@@ -50 +50 @@
-TARGET_ARCH           = IA32
+TARGET_ARCH           = X64
@@ -60 +60 @@
-TOOL_CHAIN_TAG        = MYTOOLS
+TOOL_CHAIN_TAG        = GCC48
% build

qemu使って実行。OVMFからOVMFのファイル持ってくる。

% sudo apt-get install -fy qemu-system-x86
% mkdir OVMF
% unzip ~/Downloads/OVMF-X64-r15214.zip -d OVMF
% qemu-system-x86_64 -bios OVMF/OVMF.fd -hda fat:Build/AppPkg/DEBUG_GCC48/X64
Shell> fs0:
FS0:\> Hello.efi
Hello there fellow Programmer.
Welcome to the world of EDK II.
FS0:\>