Ubuntu搭建EDK2环境



有问题请留言或mail至nosilver@protonmail.com


一、注意事项

由于此文档为配置完成后编写,可能在下载包的描述有所遗漏,届时根据自身报错去下载对应包文件
需联网
编译报错一般为git clone没下全
缺省时去下载对应包
笔者遇到的所有的编译问题均为git clone下载的包不全或版本不对

一些指令

解压tar文件 tar -xvf  filename
解压zip文件 unzip filename
提权 sudo su
可用Tab建补全一些指令或文件夹
cp -r 拷贝

二、EDK2环境搭建过程

1.换源

更换源文件

有需求的话可以先 sudo apt install vim
vi(下载了vim可以使用vim)      /etc/apt/sources/list 替换下列源文件
源文件(选取一个即可

,多选一般也没事)

| #阿里源
| deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
| deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
| deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
| deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
| deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
| deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
| deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
| deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
| deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
| deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
| #网易源
| deb http://mirrors.163.com/ubuntu/ focal main restricted universe multiverse
| deb http://mirrors.163.com/ubuntu/ focal-security main restricted universe multiverse
| deb http://mirrors.163.com/ubuntu/ focal-updates main restricted universe multiverse
| deb http://mirrors.163.com/ubuntu/ focal-proposed main restricted universe multiverse
| deb http://mirrors.163.com/ubuntu/ focal-backports main restricted universe multiverse
| deb-src http://mirrors.163.com/ubuntu/ focal main restricted universe multiverse
| deb-src http://mirrors.163.com/ubuntu/ focal-security main restricted universe multiverse
| deb-src http://mirrors.163.com/ubuntu/ focal-updates main restricted universe multiverse
| deb-src http://mirrors.163.com/ubuntu/ focal-proposed main restricted universe multiverse
| deb-src http://mirrors.163.com/ubuntu/ focal-backports main restricted universe multiverse
| #中科大源
| deb https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
| deb https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
| deb https://mirrors.ustc.edu.cn/ubuntu/ focal-backports ma

更新完之后依次执行下面两条命令

1.apt-get update
2.apt-get upgrade
如果执行之后出现源不能更新的问题,到/etc/apt/sources.list.d 下删除对应的源重新更新即可解决

2.搭建EDK2环境

配置软件环境

安装gcc,python
    apt install gcc
    apt install python
    
安装qemu
    apt install qemu

安装NASM
    sudo apt install nasm

安装asl code
    sudo apt install iasl

安装uuid库
    sudo apt install uuid-dev

构建必备软件包的信息列表
    sudo apt install build-essential

安装make与git
    sudo apt install make
    sudo apt install git

下载edk2源码https://github.com/tianocore/edk2/
    确保网络连接正常接入github.com
    git clone https://github.com/tianocore/edk2.git
    cd edk2
    git submodule update --init(确保这项成功)

3. 编译运行

编译(这里失败大概率是apt install有东西没下,按报错去下载就行了)

source edksetup.sh BaseTools
make -C BaseTools
图为成功编译

在这里插入图片描述
在这里插入图片描述

编译Ovmf

 build -a X64 -t GCC5 -p OvmfPkg/OvmfPkgX64.dsc  (GCC5及以上都写为GCC5)
图为编译成功

在这里插入图片描述
运行

cd /finaledk2/edk2-master/Build/OvmfX64/DEBUG_GCC5/FV
 切换的目录名为自己对应的编译文件夹名字

 qemu-system-x86_64 -bios OVMF.fd
图为运行成功(需等待一小段时间)

在这里插入图片描述


在 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 的官方文档和相关资料进行更详细的配置和使用说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

nosilver0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值