edk2+vs2019环境搭建

本秂侑毒 提交于 2020-08-09 13:32:43

所有命令行操作都在CMD内执行

CMD->Developer Command Prompt for VS 2019
(vs自带的命令行环境,也可以直接CMD执行
C:\"Program Files (x86)"\"Microsoft Visual Studio"\2019\Community\Common7\Tools\VsDevCmd.bat)
0. 软件安装/配置环境

    VS2019 C++(官网)
    python 3.8(官网)
    NASM http://www.nasm.us/(随便找个地方解压)
    ASL https://acpica.org/downloads/binary-tools(必须解压到C:\ASL,否则找不到)

1. clone edk2

找个地方建立一个工作目录叫EFIwork然后cd进去(VsDevCmd里面先打盘符如E:才能在这个盘里cd)

E:
cd E:\EFIwork
git clone https://github.com/tianocore/edk2.git edk2
cd edk2
git submodule update --init
cd ..

    1
    2
    3
    4
    5
    6

如果要更新的话

cd edk2
git pull
git submodule update

    1
    2
    3

2. 编译edk2的win32生成工具

//////////////////////下面是要用到的环境变量,所以每次重开命令行都要执行一遍

set NASM_PREFIX= D:\Libs\nasm\
set IASL_PREFIX = D:\Libs\iasl\ #貌似这个用不到
set WORKSPACE = E:\EFIwork\edk2\
set PACKAGES_PATH = E:\EFIwork\edk2\
set PYTHON_HOME = C:\Users\11033\AppData\Local\Programs\Python\Python38-32\

    1
    2
    3
    4
    5

////////////edksetup.bat配置了很多环境变量,每次用edk2都要执行,第一次会生成Conf目录下的配置文件,也可用edksetup.bat Reconfig重新生成

cd E:\EFIwork\edk2
edksetup.bat

    1
    2

////////////生成生成工具
edksetup.bat Rebuild
3. 编译EmulatorPkg(模拟器)

notepad Conf/target.txt # 里面是给build命令用的生成参数,我修改

TOOL_CHAIN_TAG = VS2019
TARGET_ARCH = X64
TARGET = RELEASE
ACTIVE_PLATFORM = EmulatorPkg/EmulatorPkg.dsc

    1
    2
    3
    4

然后
build -D ADD_SHELL_STRING
完成后运行E:\EFIwork\edk2\Build\EmulatorX64\RELEASE_VS2019\X64\WinHost.exe
输入Reset回车退出
4. 编译OvmfPkg

notepad Conf/target.txt
或者直接
build -p OvmfPkg/OvmfPkgX64.dsc
 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!