ubuntu16.04操作系统下的edk2安装
来源:互联网 发布:平价好用的指甲油知乎 编辑:程序博客网 时间:2024/06/07 04:03
最近正在准备老师安排的工作,需要在安装edk2,在网上面搜了好多帖子、博客,还找了几本书,但每次安装的时候不是遇到这个问题就是遇到那个问题,烦得很,这个项目感觉要做一段时间,写篇笔记,防止自己忘了。
一、安装环境
操作系统:ubuntu16.04LTS
gcc版本:gcc5.4.0
二、安装步骤
本文主要根据https://github.com/tianocore/tianocore.github.io/wiki/Using-EDK-II-with-Native-GCC和https://wiki.ubuntu.com/UEFI/EDK2等文章加上我自己的一点理解完成。
因为网上能够找到的关于EDK2安装的中文资料里面都写的是GCC4.4或者4.6,而自己的电脑版本已经更新到GCC5.4,所以曾经一度认为是版本太新的缘故,随后才找到了这篇文章。
1.安装几个必须的包
EDK2环境下需要安装几个包,可以通过一下命令来完成:
$ sudo apt-get install build-essential uuid-dev iasl git gcc-5 nasm
git - 支持git版本控制系统
gcc-5 - GNU C编译器(从Ubuntu 16.04 LTS开始,为v5.4.0)
nasm - 通用x86汇编程序
2.安装EDK2
在一个合适的工作目录安装,所有的教程、说明、博客都选择的是(〜/ src )这个文件夹,所以我没有改变,但实际上你可以根据意愿和自己的需要进行修改。
$ mkdir ~/src$ cd ~/src$ git clone git://github.com/tianocore/edk2.git$ cd edk2第一行命令就是在根目录下新建一个src文件夹;第二行命令是进入src文件夹;第三行命令是下载edk2,这个过程可能需要较长的一段时间,耐心等上一段时间就好了;第四行命令是进入edk2文件夹。实际上到第三行命令的时候就算安装edk2这一步骤完成了,只不过后续一些工作需要在edk2文件夹下操作,所以就直接写在这里了。
3.编译BaseTools
在Ubuntu系统中,需要首先构建构建EDKII所需的BaseTools,使用如下命令:
$ make -C BaseTools4.建立build环境
使用如下命令,设置EDK_TOOLS_PATH并通过运行源代码中提供的edksetup.sh脚本来设置构建环境。该脚本将复制模板和配置文件到edk2 / Conf目录,稍微等待一会,Conf文件夹下就会出现一些文档。
$ . edksetup.sh5.设置build目标
设置构建目标,需要修改Conf / target.txt文件。这将使固件包能够被建立并且设置使用的编译器版本。具体步骤如下:
进入Conf文件夹下,打开target.txt文件,
将 ACTIVE_PLATFORM = Nt32Pkg/Nt32Pkg.dsc
修改为ACTIVE_PLATFORM = MdeModulePkg/MdeModulePkg.dsc
将 TOOL_CHAIN_TAG = MYTOOLS
修改为TOOL_CHAIN_TAG = GCC5(如果你用的是GCC4.6的话,这个地方就写成GCC46)
将 TARGET_ARCH = IA32
修改成TARGET_ARCH = X64(也可以修改成“IA32 X64”,具体看你的硬件类型了。)
6.编译,即build
在这一步的时候,因为不知道在哪里输入这个命令,所以我在edk2的目录下试了试,不成功,显示了如下信息:
后来,我在edk2/EmulatorPkg/文件夹下找到了build.sh这个文件,直接输入命令:
$ ./build.sh编译完成后,整个安装过程结束。
注:我不是太喜欢只用命令行的方式来切换文件夹,喜欢在该文件夹下直接右键“打开终端”,所以大家在阅读的时候可能有的地方跳跃地比较大,请注意。
- ubuntu16.04操作系统下的edk2安装
- Ubuntu16.04操作系统的安装
- Ubuntu16.04安装ROS操作系统
- caffe在ubuntu16.04下的安装
- ubuntu16.04下安装eclipse的方法
- ubuntu16.04下matlab2015b的安装
- windows10下安装ubuntu16.04的双系统
- matlab2016b在ubuntu16.04下的安装
- ubuntu16.04 下安装 Nginx 的方法
- Ubuntu16.04 下cuda的安装
- Ubuntu16.04下mysql的简单安装
- ubuntu16.04下sogou输入法的安装
- ubuntu16.04下安装mariadb
- Ubuntu16.04下安装Matlab
- Ubuntu16.04下openface安装
- Ubuntu16.04下安装matlab2014a
- ubuntu16.04下安装caffe
- ubuntu16.04下安装mysql
- 《kubernetes-1.8.0》04-master搭建
- 【NOIP2017提高组正式赛】宝藏
- spring框架学习(一)
- 【Scikit-Learn 中文文档】支持向量机
- web笔记
- ubuntu16.04操作系统下的edk2安装
- 南阳理工学院oj上的传纸条
- 数组存储字符串初始化
- JavaWeb-012-JSP9个隐含对象
- 关于eclipse运行项目太卡,设置jvm内存的解决方法
- 【深度分析】ServletContextListener
- 广义线性模型
- 1744 安排辅导上机 memcpy
- 商业分析能力是怎样炼成的?