(本文已参与“新人创作礼”活动,一起开启掘金创作之路。)
(转载请保留-《UEFI编程实践》并行博客,作者:罗冰)
这两天妻子去阜宁,孩子没有带过去。我只能在陪孩子之外,腾出一点点时间,来搭建UDK2017/UDK2018的编译环境。
大部分的时间都在装VS,试了两个版本,VS2013和VS2015。我不知道是不是我的版本有问题,总是不成功。Ubuntu16.04的也没有安装成功,让人颇为恼火。总计来回折腾了12个虚拟机,真是不甘心。
下周开始又没有太多时间了,几个案子都在催着完成,有大量的工作要去做。两个专利也还没写,前期的资料都还没收集完。思来想去,我仍旧以UDK2010来编译这些代码吧。主要的目的是熟悉这些API和UEFI的架构,我目前没有开发BIOS,太细节的暂时不必理会。
插一句,为了方便调试,我请同事做了一些带有PCI-E扩展ROM的卡,主芯片是CH366,下周应该可以到我手上了。对于进入操作系统之前,可以跑自己的程序,我一直很热衷:总想脱离操作系统做点什么坏事。→_→
比如针对操作系统核心的几个文件ntldr.dll,gdi32.dll等,使用Oprom对其认证,防止篡改。或者和杀毒软件配合,进入OS前做些事情。整个硬盘都可以控制,可以预先做很多动作。
又扯远了,回到搭建编译环境的事情吧。
我主要使用Vmware搭建虚拟机,开发用的操作系统为win10。中间的各种小问题就不说了,基本上都解决了。主要是两个问题,没有找到解决办法。
1. VS2013+UDK2017,VS2013全部安装,WDK8.0和WDK8.1的目录都有。编译Nt32Pkg无法通过。如图1。
图1 UDK2017+VS2013,编译NT32Pkg报错
2. VS2015+UDK2018,Nt32Pkg编译通过,AppPkg编译不通过。本系列Blog中的“UEFI开发探索03-环境搭建2”曾经描述过安装过程。编译AppPkg的报错如下:
图2 UDK2018+VS2015 编译AppPkg报错
这段时间以把程序编译运行为主,就用UDK2010,尽快把博客写完。和张佩去年就约定要把Foxdisk和UEFI的开发记录下来,一直到现在还没搞定,甚是惭愧。
搭建环境的问题,留待日后吧,看是否能凑些边角料的时间来找找原因。O__O
(后续已经找到原因,在 UEFI开发探索Q&A – 问题辑录 中可以看到解释)