옛날 EDK2 에는 CSM 구현이 있지만 최신에서는 더이상 유지보수되지 않아 제거되었다.
edk2-stable202311 가 마지막이고, 다음 edk2-stable202402 에서는 완전히 사라졌다.
$ git clone -b edk2-stable202311 https://github.com/tianocore/edk2
# SEABIOS 빌드
$ git clone https://git.seabios.org/seabios.git
$ cd seabios
$ make menuconfig
여기서 CONFIG_CSM 활성화: General Features -> Build Target -> CSM for EFI BIOS 로 변경
그리고 나는 QEMU_HARDWARE 도 활성화했다. (사실 뭔지 모르지만 필요할거 같아서)
CONFIG_ROM_SIZE=192 로도 변경했다. (https://github.com/tianocore/edk2/issues/82 때문에)
$ make
$ cp out/Csm16.bin ../edk2/OvmfPkg/Csm/Csm16/Csm16.bin
# EDK2/OVMF 빌드
$ cd ../edk2
$ vim .gitmodules
url = https://github.com/Zeex/subhook.git
부분을
url = https://github.com/tianocore/edk2-subhook.git
으로 바꾼다. (https://github.com/tianocore/edk2/pull/6402 참고)
$ git submodule update --init --recursive
$ make -C BaseTools
$ source edksetup.sh
$ export WORKSPACE=$(pwd)
$ export PACKAGES_PATH=$WORKSPACE
$ export EDK_TOOLS_PATH=$WORKSPACE/BaseTools
$ build -a X64 -t GCC5 -b RELEASE -p OvmfPkg/OvmfPkgX64.dsc \
-D CSM_ENABLE \
-D SECURE_BOOT_ENABLE \
-D TPM2_ENABLE \
-D TLS_ENABLE \
-D HTTP_BOOT_ENABLE \
-D SMM_REQUIRE
이제 Build/OvmfX64/RELEASE_GCC5/FV/OVMF.fd 가 만들어졌다
근데 부팅이 안됨...
그냥 https://gist.github.com/Trumeet/0f80542986ae282fe1305c2e6f61c30c 참고하시길..
버전 문제인듯..
반응형
'개발 및 운영' 카테고리의 다른 글
티스토리 본문 중 태그 자동 링크 걸기 (0) | 2025.01.15 |
---|---|
libvirt + windows 11 + hyper-v 삽질기 (2) | 2024.11.21 |
hometax 데이터 형식 xml -> json 변경 사항 (1) | 2024.11.19 |
Chromium 브랜딩 빌드 및 강제 확장 프로그램 설치 개발 (0) | 2024.08.14 |
Captcha Solver 개발기 (0) | 2024.08.07 |
댓글