SprinkleOS/docs/qemu.md

26 lines
1.6 KiB
Markdown
Raw Normal View History

2020-09-08 23:10:58 +09:00
# ビルドした efi ファイルを QEMU で起動する
2020-09-08 18:59:12 +09:00
## 必要なもの
* QEMU
* [ubuntu.md](ubuntu.md) で使用したファイル群
2020-09-06 15:24:57 +09:00
## 手順
2020-09-08 18:59:12 +09:00
1. ビルドした efi ファイルを起動するための OVMF をビルドする
2020-09-09 07:31:26 +09:00
* `~/edk2/Conf/target.txt``ACTIVE_PLATFORM``OvmfPkg/OvmfPkgX64.dsc` に変更し、`build` コマンドを実行する。
2020-09-08 23:10:58 +09:00
* `edk2/OvmfPkg` ディレクトリ内で、`. build.sh` を実行する。
2020-09-08 18:59:12 +09:00
ここでエラーが発生した場合、edk2 のディレクトリに戻り、下記のコマンドを実行して再度試してみる。
```
git submodule update --init --recursive
sudo apt install acpica-tools
```
2020-09-09 07:21:16 +09:00
2. ビルドした OVMF を使って起動する
2020-09-09 07:31:26 +09:00
まず、以下のファイルがコマンドを実行するディレクトリに存在していることを確認する。
2020-09-09 07:17:58 +09:00
* `OVMF_CODE.fd` (`Build/OvmfX64/DEBUG_GCC5/FV/OVMF_CODE.fd` からコピー)
* `OVMF_VARS.fd` (`Build/OvmfX64/DEBUG_GCC5/FV/OVMF_CODE.fd` からコピー)
2020-09-09 07:31:26 +09:00
また、以下のファイルを実行するディレクトリの `EFI/BOOT/` 中に `BOOTX64.efi` とリネームして配置する。
2020-09-09 07:17:58 +09:00
* `sprinkleos.efi` (`Build/SprinkleOSX64/DEBUG_GCC5/X64/sprinkleos.efi` からコピー)
**実行するコマンド**
`qemu-system-x86_64 -drive if=pflash,format=raw,readonly,file=OVMF_CODE.fd -drive if=pflash,format=raw,file=OVMF_VARS.fd -hda fat:rw:.`
2020-09-09 07:21:16 +09:00
## 注意
2020-09-09 07:18:47 +09:00
* 更新した SprinkleOS を読み込むには、efi ファイルを再配置後 QEMU のコマンドを実行し直してください。
* Windows 環境では、QEMU に PATH が通っていることを確認してください。