如何在linux上搭建edk编译环境

被分到了做bios系统的组里(但愿下周我还在),记录一下最艰难的起步。

环境说明:

ubuntu子系统 18.04

gcc 7.5

python 3.6

1,下载源码

git clone https://github.com/tiancore/edk2

第一步就扑街,这是我没想到的。

这里涉及到git里面的子模块——热知识,在clone项目时子模块的内容不会被一并复制下来,而是以链接的形式储存在文件里。

这个时候就需要另一个指令

git submodule update --init --recursive

(而且要翻墙!小声bb)

2,配置环境

下载源码后我们进入edk2文件,打开它路径下的Conf文件中的target.txt。这里面存储了编译与运行时的环境

具体内容如下,自己找一找对应的项。

ACTIVE_PLATFORM       = EmulatorPkg/EmulatorPkg.dsc

TARGET_ARCH           = X64

TOOL_CHAIN_TAG        = GCC5

 3,编译edk2工具链

首先要下载make、gcc等编程工具

sudo apt-get install build-essential uuid-dev

然后进入BaseTools目录并使用make命令编译

edk2$ cd BaseTools
edk2/BaseTools$ make

看到done!就说明成功了

4,编译UEFI模拟器和UEFI工程

首先要设置环境变量

edk2$ source edksetup.sh

然后,build!

edk2$build

最后使用build run运行就成功——好吧,还差一点

5,

不对,是差很多点!

理论上来说,这个时候应该弹出来模拟的bios界面了,怎么什么都没发生呢?

首先,打开这个文件

添加这一行

就是MdeModulePkg/Core/Pei/PeiMain.inf { 

   <BuildOptions>

      GCC:*_*_*_CC_FLAGS =-O0

}

这一段

然后重新build一下

6,最后一步

进入这个目录(其实就是刚才修改的编译配置)

然后./Host

如果没下xmanger,它会弹出一个框提醒你下载,下载后就能弹出那个bios界面了

7,其他

我记得编译还是运行时,会弹出一堆找不到文件的错误?其实那个是你的库没下全,它提示哪个文件下哪个

比如X11,其他的记不清了。

据说这个现在不是主流了……我研究研究怎么改=_=

 

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
在 Windows 环境下配置 EDK2 开发环境,可以按照以下步骤进行操作: 1. 安装所需的软件和工具: - 下载并安装 Visual Studio(推荐使用 Visual Studio 2019)。 - 下载并安装 Python(推荐使用 Python 3.x 版本)。 - 下载并安装 Git。 2. 克隆 EDK2 代码库: - 打开命令行终端,切换到你希望存放 EDK2 代码的目录。 - 运行以下命令克隆 EDK2 代码库: ``` git clone https://github.com/tianocore/edk2.git ``` 3. 配置环境变量: - 将 Python 安装路径添加到系统环境变量中。例如,将 `C:\Python39` 添加到 PATH 变量中。 - 将 MSBuild 工具添加到系统环境变量中。根据你的 Visual Studio 版本和架构,添加类似以下路径的变量: ``` C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin ``` 4. 构建 BaseTools 工具: - 打开命令行终端,切换到 EDK2 代码库的 `BaseTools` 目录。 - 运行以下命令来构建 BaseTools 工具: ``` python ./Build.py ``` 5. 配置 EDK2 环境: - 打开命令行终端,切换到 EDK2 代码库的根目录。 - 运行以下命令来配置 EDK2 环境: ``` .\edksetup.bat ``` 6. 生成项目文件: - 运行以下命令生成项目文件: ``` build ``` 7. 构建 EDK2: - 运行以下命令来构建 EDK2: ``` build -a [平台架构] -p [平台名称]/[模块名称].dsc ``` 其中,`[平台架构]` 可以是 `IA32`、`X64` 或 `ARM`,`[平台名称]` 和 `[模块名称]` 是你要构建的平台和模块的名称。 完成以上步骤后,你就成功配置了 EDK2 开发环境。你可以根据需要进行修改和编译 UEFI 固件和应用程序。注意,以上步骤仅提供了基本的配置过程,具体的配置和构建步骤可能因个人需求和环境而有所不同。建议参考 EDK2 的官方文档和相关资料进行更详细的配置和使用说明。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值