【UEFI基础】UEFI环境搭建(一)

     最近又开始搭建UEFI环境了.之前有基于VS2010搭建过,貌似还挺简单。由于现在又是git又是VS2020, UDK的持续更新,想基于git上最新的UDK搭配最新的VS2020搭建一个环境。奈何碰了一鼻子灰。最终也只是在UDK2018的基础上搭配VS2017勉强编译过。

  具体的过程就不多做累赘了,分享过程中遇到的问题。观友们如果遇到类似的问题,不妨尝试一下列出的解决方法。

  1. 编译NT32 报错 build -p Nt32Pkg/Nt32Pkg.dsc -a IA32

看起来是genFW造成的。

解决方法如下:
可以将\BaseTools\Bin\Win32\GenFds.exe 改名为 GenFds.LABZ。 然后把
\BaseTools\BinWrappers\WindowsLike 加入系统环境变量的 Path 路径

添加路劲后,重启后问题消失。

2. 最近在编译 AppPkg 的时候(Build NTPkg 无问题)遇到如下错误

c:\buildbs\UDK\StdLib\Include\sys/EfiCdefs.h(342): error C2220: warning treated as error - no 'object' file generated

c:\buildbs\UDK \StdLib\Include\sys/EfiCdefs.h(342): warning C4117: macro name 'STDC_HOSTED' is reserved, '#define' ignored

检查代码 \StdLib\Include\sys\EfiCdefs.h 有如下定义

// Keep compiler quiet about casting from smaller to larger types

#pragma warning ( disable : 4306 )

#define STDC 1

#define STDC_VERSION 199409L

#define STDC_HOSTED 1 //这个定义导致问题

删除 STDC_HOSTED 定义,或者添加如下编译指令都可以修复这个问题

3.无法安装VS2015.

尝试很久都不成功,可能是系统包的问题,使用VS2017替代

4.编译成功,无法打开模拟器

此问题暂时没解决,暂时用QEMU实现。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值