-
-
[原创]用VS编译edk2并用windbg源码调试OVMF
-
发表于:
2020-1-7 12:07
15232
-
[原创]用VS编译edk2并用windbg源码调试OVMF
不知为什么,每次尝试去编译别人的项目都要踩n个坑,应该还是太菜了吧......编译成功后把方法记下来,以后回顾的时候方便看
1.下载edk2到文件夹edk2中并更新子模块
git clone https://github.com/tianocore/edk2.git edk2
cd edk2
git submodule update --init
2.安装工具链,我只试过2015和2019两个VS版本,任选一个就行
(1)安装VS2015,尝试创建一个Win32控制台程序,过程中会要求你安装必要的工具
(2)安装VS2019,打开后,选择“工具”->“获取工具和功能”,在安装列表中勾选“使用C++的桌面开发”,然后在右边的"安装详细信息"中勾选"使用C++的桌面开发"->"MSVC v141 -VS 2017 C++ x64/x86 生成工具",之后右下角的"修改"
3.安装相关程序
(安装相关程序在附件中,除了
Intel UDK Debugger Tool v1.5 以外不一定要安装在C盘下,也可以放在其他盘)
(1)安装NASM,并添加一条环境变量。(不一定要安装下C盘下,可以放到其他路径,下面也是)
NASM_PREFIX C:\NASM\
(2)安装PYTHON,并添加两条环境变量。
PYTHON_HOME C:\Python38
PYTHON_FREEZER_PATH %PYTHON_HOME%\Scripts
(3)添加一条关于IASL路径的环境变量。
IASL_PREFIX C:\ASL\
(4)安装windbg的32版本。
(5)安装qemu 0.13.0,安装后将qemu安装路径放到系统环境变量Path中
(6)安装Intel UDK Debugger Tool v1.5,切记别修改默认安装目录C:\Program Files (x86)\Intel\Intel(R) UEFI Development Kit Debugger Tool,安装过程中会要求设置windbg路径和调试方式,如下面三张图所示。
填写32位windbg所在的目录即可;
这个安装路径不能更改;
调试方式选择“Pipe”,端口名为“qemu_pipe_dbg“;
4.编译BaseTools
在edk2路径下打开命令行
edksetup.bat
cd BaseTools
nmake
5.修改配置文件
打开Conf\target.txt,以下是对于部分配置项的解释,配置相关的详细信息在Conf/tools_def.txt中
(1)ACTIVE_PLATFORM
编译目标,这里为EmulatorPkg/EmulatorPkg.dsc
(2)TARGET
编译目标版本,可以为DEBUG\RELEASE或者用户自定义,这里为DEBUG
(3)TARGET_ARCH
运行平台,这里为IA32
(4)TOOL_CHAIN_TAG
工具链,如果安装了VS2015,则设置为VS2015x86,如果安装了VS2019,则设置为VS2019
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
最后于 2021-6-17 17:11
被TechForBad编辑
,原因: 添加内容