有一段时间没写了,主要是windows的环境搭建下班后一直没弄好,在编译的时候总是出现一个cl.exe的致命错误,百度了很多也没解决,索性我放弃了,直接搭建Linux编译环境得了。
因为我用的是官网最新的edk(吐槽一下,edk里面有些文件都没有,被删掉了,不知道这个代码管理者是怎么管控的),所以不晓得到底是代码有问题呢还是搭建的环境有问题,我也不想去思考了,毕竟搭建Linux环境我觉得简单多了,还不占用C盘过多的空间,对于个人来说,简直完美。废话不多说,下面直接开始搭建。
第一步:安装VMware
打开软件管家公众号,里面各种版本软件,自己选择合适的版本直接下载安装就行,然后去官网下载一个Linux系统,我用的是Ubantu最新的,具体怎么搭建虚拟机就不细说了,很简单,一步一步跟着提示搭建就行
第二步:下载最新EDK
最新EDK的雷所有的都排掉了,代码放在了我的仓库,想要的直接获取就行
第三步:搭建编译环境
sudo apt-get install 下列的软件包
build-essential
uuid-dev
iasl
git
gcc
nasm
python
libc6-dev-i386
libx11-dev
libx11-dev:i386
libxext-dev
libxext-dev:i386
注意:gcc版本查看一下是不是GCC9版本,我的是9.3.0,代码里面也改了GCC9,按理来说直接就是最新的了,安装最好一个一个来 。
第四步:进行编译
前面的都实行好了后就可以进行编译了
步骤:
1、 在edk-new目录下运行命令
make -C BaseTools
这一步是生成编译所需的工具
2、运行命令
. edksetup.sh(有个点,也可以是source edksetup.sh)
3、运行命令
build -p EmulatorPkg/EmulatorPkg.dsc
每次运行这个命令前记得先运行第二步(可以写个脚本,后续再上传),运行后就会生成相应的FD文件
4、运行命令
EmulatorPkg/build.sh -a IA32 run
运行这个命令实际就是加载了这个FD文件,开启了模拟环境,最后就出现了大家熟悉的界面啦:
ok,Linux编译环境搭建就先说到这,windows的后续有时间再看究竟是什么原因去了