UEFI环境搭建实验报告
我就来讲讲我的悲催环境搭建过程吧,真的难。
主要参考《UEFI原理与编程》这本书的第二章。当然,这本书的作者太nb了,他自认为我们都配好了各种环境,下好了各种东西……书上的步骤特别简单,然而问题确是多多。
我的步骤如下:
1.我用的C编译器是VS2015,用的EDK2是EDK2-2017(看Conf文件夹里的tools_def.txt,是最多支持到VS2015的),然后下了SDK for win10,因为我系统是win10 64位(不过好像vs自带SDK,所以不用下,不过不管了,下了也行,就是放在c盘太占空间)。
2.然后按照书上的网址下载了IASL编译器,不过书上的网址可能是时间太久远,最后的binary-tools应改为binary_tools。
3.接下来进入EDK2的目录,运行edksetup.bat,然后Conf文件夹就会多出几个txt文件。像书上那样更改相应文字,然后在EDK2目录下运行edksetup.bat --nt32
出现问题。
问题1:未配置Python环境变量(PYTHON_HOME),在环境变量中输入Python相应路径即可(未下载的去下载),如下图
上面的第一个变量如果没有会有警告,问题不大,下载的话可百度,注意版本、位数和Python一致即可。
问题2:同样是环境变量设置问题,如下图设置:
设置到Basetools目录上就可以了。
问题3:提示BaseTools\Bin\Win32 或者 binary C tools missing 之类的问题,前一个忘截图了,后一个如下图:
可以看到Bin文件夹里根本没有Win32,所以说需要编译生成。
在Basetools目录下运行get_vsvars,执行完后输入vsvars32,这就配置好了vs编译环境。
接下来继续在Basetools目录里,输入toolsetup Rebuild,等一会,完成之后去Bin目录下查看,可以看到已经有了编译好的Win32目录了。
接下来问题都解决了(?),继续回到正轨,在edk2目录中输入edksetup.bat --nt32,没发现error,完成后输入build,等待一段时间后……又**出现问题:
问题4:"nasm"识别不了。安装nasm,在tools_def.txt文件的末
尾将*_*_*_NASM_PATH后面的路径改为NASM的安装目录\nasm.exe即可。
然后重新来一遍edksetup.bat --nt32和build,这次等待很长一段时间之后,会出现如下图的提示完成的字:
如上图,Done后面有完成的时间和build的时长。
然后就如同书上所写的那样,在edk2目录中输入build run,运行模拟器,结果如下图(有两个窗口UGA Window 1和UGA Window 2,我只截了一个):
————————————————————————————————————————————————————