当前位置: 首页 > news >正文

Ubuntu环境下,EDK2+EmulatorPkg编译运行UEFI固件

直奔主题,按以下步骤既可以编译运行固件程序

第一步:选择合适的版本,下载EDK2源码(gitee也可以)

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

第二步:命令行下载依赖子模块

cd edk2
git submodule update --init --recursive #递归下载

第三步:如果第二步操作失败,执行如下操作手动添加以来模块

cd edk2

cat .gitmodules #查看依赖子模块和对应安装位置

git submodule status # 查看所有子模块的提交哈希

git ls-tree HEAD -r | grep "commit"  # 或查看主仓库记录的子模块提交的hash值

           根据获取到的依赖模块的哈希值,魔法github上查询该模块,在url后面拼接该哈希值,就可以获取正确版本的以来模块。最后将对应的代码下载到EDK2指定位置。

第四步:安装编译链工具

sudo apt install build-essential nasm acpica-tools  # Ubuntu/Debian

sudo apt install libx11-dev
sudo apt install libxext-dev

第五步:初始化编译环境

# 在EDK2根目录下运行
source edksetup.sh  # Linux/macOS

第六步:编译BaseTools

make -C BaseTools

第七步:执行编译命令

build -p EmulatorPkg/EmulatorPkg.dsc -a X64 -t GCC5 -b DEBUG

第八步:运行

find ./Build -name "Host" #找到文件位置

              进入目录FV_RECOVERY.fd这个文件的目录下面,执行 ./全路径/Host

如下界面就可以看到了

http://www.dtcms.com/a/124969.html

相关文章:

  • Ollama教程与大模型本地部署指南
  • 32 python json
  • PostgreSQLs数据库考试
  • MySQL 中的聚簇索引和非聚簇索引有什么区别?
  • Redis的过期和内存淘汰策略
  • 新技术学习方法
  • 卷积神经网络 CNN 系列总结(一)---基础知识点
  • ubuntu22.04 安装-ODBC驱动-SQLserver
  • vue中根据html动态渲染内容2.0
  • 无人设备遥控器之数据分析与处理篇
  • 一周学会Pandas2 Python数据处理与分析-Pandas2数据读取
  • ------------------V2024-2信息收集完结------------------
  • Linux 入门五:Makefile—— 从手动编译到工程自动化的蜕变
  • 使用开源项目蜂信物联/FastBee前端安装失败
  • Python进阶编程总结
  • vue项目proxy代理的方式
  • DeepSeek与搜索引擎:AI生成内容如何突破“语义天花板”
  • 【前端】VUE前端利用iframe嵌入帆软报表
  • 【Python算法】基础语法、算法技巧模板、二分、DFS与BFS、并查集
  • V4L2杂谈
  • 【U-Boot】解决U-Boot的“Unknown command ‘help‘ - try ‘help‘”问题
  • 等保十问/等保相关基本问题解答
  • git日志规范
  • FastAPI + Vue3 对 SSE 通知机制的实现与进阶思考
  • Python----概率论与统计(贝叶斯,朴素贝叶斯 )
  • 青少年编程与数学 02-016 Python数据结构与算法 05课题、哈希表
  • 如何在Linux系统Docker部署Dashy并远程访问内网服务界面
  • ROS云课三分钟-差动移动机器人巡逻报告如何撰写-中等报告
  • 使用pip3安装PyTorch与PyG,实现NVIDIA CUDA GPU加速
  • LeetCode Hot100 刷题笔记(1)—— 哈希、双指针、滑动窗口