[发明专利]软件开发的工程构建方法及装置在审
申请号: | 201810663010.1 | 申请日: | 2018-06-25 |
公开(公告)号: | CN109062558A | 公开(公告)日: | 2018-12-21 |
发明(设计)人: | 付华楷;刘皓;陈鹏 | 申请(专利权)人: | 烽火通信科技股份有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 陈锐 |
地址: | 430000 湖北省武*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 构建 编译环境 工程描述 软件开发 环境描述文件 模块描述文件 工程构建 源代码 终端 运行环境 编译器 跨平台 灵活的 部署 灵活 创建 | ||
本发明公开了一种软件开发的工程构建方法及装置,涉及软件开发领域。该方法的步骤为:在需要构建工程的终端上,创建环境描述文件和模块描述文件;根据工程描述文件的编译器和当前终端的运行环境,确定当前工程需要的编译环境,根据环境描述文件构建当前工程需要的编译环境;根据模块描述文件构建当前工程描述文件中提到的所有模块;根据构建的当前工程需要的编译环境、以及当前工程描述文件中提到的所有模块,生成当前工程。本发明将工程和模块进行了解耦,支持跨平台部署,能够灵活而高效的在一套源代码系统中灵活的部署多套工程。
技术领域
本发明涉及软件开发领域,具体涉及一种软件开发的工程构建方法及装置。
背景技术
在软件开发过程中,随着工程规模的增大,工程的源代码及运行环境(运行环境包括工程的依赖模块、描述文件等)的规模也随之增加,进而使得工程的构建变的十分复杂并难以维护。
当一套工程部署在不同的板卡上时,由于不同板卡的硬件和操作系统环境存在很多差异,因此同一套工程在不同的板卡上的编译,运行环境都不相同;这样就需要在不同的板卡上确定和引用工程所需的所有模块及对应的编译环境(编译链,参数,需要的系统库等)。
但是,一套工程通常由多个知晓不同技术的模块开发人员来完成,而确定工程所需的所有模块,则需要多个相应的模块开发人员和工程人员来完成,因为不同行为的人员仅知晓对应行为的知识,不知晓其他行为的知识,当工程规模较大时,这无疑严重加剧了工程构建的难度和工作量,例如:在一个板卡上构建多套工程时,多套工程在需要的模块可能大同小异,当工程所需模块数量非常多的,修改对应的模块和编译方法、以及选取那些模块才能让系统正常运行,对于开发人员来说无疑是一个很大的挑战。
发明内容
针对现有技术中存在的缺陷,本发明解决的技术问题为:如何灵活而高效的构建工程,本发明能够将工程和模块进行解耦,支持跨平台部署,能在一套源代码系统中灵活的部署多套工程。
为达到以上目的,本发明提供的软件开发的工程构建方法,包括以下步骤:
S1:在需要构建工程的终端上,创建环境描述文件和模块描述文件,转到S2;
S2:需要构建工程时,获取工程描述文件,工程描述文件包括用于选择工程编译环境的编译器、以及工程构建需要的所有模块,转到S3;
S3:根据工程描述文件的编译器和当前终端的运行环境,确定当前工程需要的编译环境,根据S1中创建的环境描述文件,构建当前工程需要的编译环境,转到S4;
S4:根据S1中创建的模块描述文件,构建当前工程描述文件中提到的所有模块,转到S5;
S5:根据S3中构建的当前工程需要的编译环境、以及S4中构建的当前工程描述文件中提到的所有模块,生成当前工程。
在上述技术方案的基础上,S1中的1份环境描述文件用于描述1个编译环境,包括该环境下使用的编译器、运行的操作系统、以及需要链接的系统库;S1中的1份模块描述文件包括1个终端上的模块的源文件、头文件、以及构建该模块时所依赖的其他模块。
在上述技术方案的基础上,S3中所述当前工程需要的编译环境的构建流程包括:
若当前终端存在该编译环境,则直接引用;
若当前终端不存在该编译环境,则读取与该编译环境对应的环境描述文件,根据读取的环境描述文件构建该编译环境;
若当前终端不存在该编译环境、也不存在该编译环境对应的环境描述文件,则创建该编译环境的环境描述文件后,根据环境描述文件构建该编译环境。
在上述技术方案的基础上,S4中所述工程描述文件中提到的所有模块的构建流程包括:
遍历工程描述文件中提到的所有模块信息:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烽火通信科技股份有限公司,未经烽火通信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810663010.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种实现相同目标的编程方法
- 下一篇:一种数据处理方法和装置