[发明专利]源代码编译方法、装置、系统及存储介质有效
| 申请号: | 201811625111.6 | 申请日: | 2018-12-28 |
| 公开(公告)号: | CN109739508B | 公开(公告)日: | 2022-07-22 |
| 发明(设计)人: | 李强;赵雪峰;李超;王玉龙 | 申请(专利权)人: | 龙芯中科技术股份有限公司 |
| 主分类号: | G06F8/41 | 分类号: | G06F8/41 |
| 代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 钭飒飒;刘芳 |
| 地址: | 100095 北京市海淀*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 源代码 编译 方法 装置 系统 存储 介质 | ||
本发明提供一种源代码编译方法、装置、系统及存储介质,该方法包括:从UEFI源代码中,选取MIPS平台所需代码的初始文件,所述初始文件包括多个在平台上可执行文件的源文件;将所述初始文件添加到所述MIPS平台对应的目标编译工具中,所述目标编译工具中加载有用于MIPS平台的编译参数和编译规则;通过所述目标编译工具对所述初始文件中的源文件进行编译,以使得编译得到的目标格式的文件能够在MIPS平台上执行。从而可以实现利用开源的UEFI源代码在特定的MIPS平台上进行移植,并成功编译出能够在MIPS平台运行的代码,整个编译过程符合标准UEFI的规范,具备较强的可移植性和可扩展性。
技术领域
本发明涉及计算机技术领域,尤其涉及一种源代码编译方法、装置、系统及存储介质。
背景技术
统一的可扩展固件接口(Unified Extensible Firmware Interface,UEFI),是一种详细描述类型接口的标准。目前,在UEFI官方源码中的编译工具不支持MIPS平台。
现有技术中,一般采用的非UEFI标准来实现,即运用一些非常规的编译方式来编译MIPS平台能够运行的代码。最终生成所需要的目标格式文件,例如格式为.efi、.fd的文件。
但是,这种编译方式,编译过程复杂,并且容易产生各种稳定性的问题。
发明内容
本发明提供一种源代码编译方法、装置、系统及存储介质,以实现利用开源的UEFI源代码在特定的MIPS平台上进行移植,并成功编译出能够在MIPS平台运行的代码,整个编译过程符合标准UEFI的规范,具备较强的可移植性和可扩展性。
第一方面,本发明实施例提供一种源代码编译方法,包括:
从UEFI源代码中,选取MIPS平台所需代码的初始文件,所述初始文件包括多个在平台上可执行文件的源文件;
将所述初始文件添加到所述MIPS平台对应的目标编译工具中,所述目标编译工具中加载有用于MIPS平台的编译参数和编译规则;
通过所述目标编译工具对所述初始文件中的源文件进行编译,以使得编译得到的目标格式的文件能够在MIPS平台上执行。
在一种可能的设计中,从UEFI源代码中,选取MIPS平台所需代码的初始文件之前,还包括:
获取初始编译工具源文件;其中,所述初始编译工具源文件为EDKII源代码中的编译部分;
接收用于MIPS平台的编译参数和编译规则;
根据所述初始编译工具源文件以及用于MIPS平台的编译参数和编译规则,得到目标编译工具源文件;
对所述目标编译工具源文件进行编译,编译出所述目标编译工具。
在一种可能的设计中,所述根据所述初始编译工具源文件以及用于MIPS平台的编译参数和编译规则,得到目标编译工具源文件,包括:
接收用于MIPS平台的编译参数和编译规则,将用于MIPS平台的编译参数保存至参数文件,将用于MIPS平台的编译规则保存至规则文件,以使得编译命令调用所述参数文件和/或所述规则文件;
在命令的可执行文件的源文件中的架构相关参数中添加MIPS的编译信息。
在一种可能的设计中,所述编译命令为第一编译命令,所述第一编译命令为用于编译的Linux命令,所述编译命令调用所述参数文件和/或所述规则文件,包括:
所述第一编译命令调用所述用于MIPS平台的参数文件和规则文件。
在一种可能的设计中,所述编译命令为第二编译命令,所述第二编译命令为用于编译的UEFI命令,所述编译命令调用所述参数文件和/或所述规则文件,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于龙芯中科技术股份有限公司,未经龙芯中科技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811625111.6/2.html,转载请声明来源钻瓜专利网。





