CN111309327A - 应用程序的自动编译方法及计算机可读存储介质 - Google Patents
应用程序的自动编译方法及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111309327A CN111309327A CN201811517027.2A CN201811517027A CN111309327A CN 111309327 A CN111309327 A CN 111309327A CN 201811517027 A CN201811517027 A CN 201811517027A CN 111309327 A CN111309327 A CN 111309327A
- Authority
- CN
- China
- Prior art keywords
- file
- directory
- configuration file
- script
- source code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种应用程序的自动编译方法及计算机可读存储介质,方法包括:根据用户配置,生成用户配置文件和默认配置文件;对应用源码的文件目录结构进行分析,生成分析配置文件;根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本;在应用源码的根目录下创建输出目录;调用构建工具解析所述构建脚本,生成编译脚本,并将所述编译脚本保存至所述输出目录下;在所述输出目录下运行编译命令,生成应用程序。本发明可降低脚本的学习成本、开发成本和维护成本。
Description
技术领域
本发明涉及软件编译技术领域,尤其涉及一种应用程序的自动编译方法及计算机可读存储介质。
背景技术
基于ARM架构上的嵌入式linux应用编译开发,现在基本上都是手动来编写编译脚本makefile,或者使用一种更高级的构建工具如cmake、scons或者类似工具写出抽象化更好的脚本,以此来最终自动生成编译的makefile,但是无论哪种方式都需要手动编写大量脚本,而makefile脚本语法更是晦涩难懂,无论是学习时间,还是开发周期和维护成本都比较高,有的复杂的项目甚至需要专门makefile工程师来维护makefile编译框架,cmake之类虽然能写出可读性更好的脚本,但是脚本的学习成本,开发成本和维护成本都还是免不了的。
发明内容
本发明所要解决的技术问题是:提供一种应用程序的自动编译方法及计算机可读存储介质,可降低脚本的学习成本、开发成本和维护成本。
为了解决上述技术问题,本发明采用的技术方案为:一种应用程序的自动编译方法,包括:
根据用户配置,生成用户配置文件和默认配置文件;
对应用源码的文件目录结构进行分析,生成分析配置文件;
根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本;
在应用源码的根目录下创建输出目录;
调用构建工具解析所述构建脚本,生成编译脚本,并将所述编译脚本保存至所述输出目录下;
在所述输出目录下运行编译命令,生成应用程序。
本发明还涉及一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现以下步骤:
根据用户配置,生成用户配置文件和默认配置文件;
对应用源码的文件目录结构进行分析,生成分析配置文件;
根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本;
在应用源码的根目录下创建输出目录;
调用构建工具解析所述构建脚本,生成编译脚本,并将所述编译脚本保存至所述输出目录下;
在所述输出目录下运行编译命令,生成应用程序。
本发明的有益效果在于:只需要简单的配置或者不用配置就能对待编译的应用源码进行自动化的编译,解决了对撰写编译框架及脚本对开发人员要求比较高的问题,开发人员只需专注应用程序相关的开发,把开发人员从编译系统的构建中解放出来,从而解决了应用编译场景下的编译脚本难学、编译框架开发周期长、编译框架维护麻烦等问题。
附图说明
图1为本发明实施例一的一种应用程序的自动编译方法的流程图;
图2为本发明实施例一的项目源码目录结构示意图一;
图3为本发明实施例一的项目源码目录结构示意图二。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图详予说明。
本发明最关键的构思在于:提供较丰富的针对编译需要的用户交互配置选项;根据用户的配置,自动生成用户配置文件和默认配置文件,并结合分析配置文件自动生成构建脚本,进而自动生成编译脚本,从而完成对应用程序的编译。
请参阅图1,一种应用程序的自动编译方法,包括:
根据用户配置,生成用户配置文件和默认配置文件;
对应用源码的文件目录结构进行分析,生成分析配置文件;
根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本;
在应用源码的根目录下创建输出目录;
调用构建工具解析所述构建脚本,生成编译脚本,并将所述编译脚本保存至所述输出目录下;
在所述输出目录下运行编译命令,生成应用程序。
从上述描述可知,本发明的有益效果在于:可降低脚本的学习成本、开发成本和维护成本。
进一步地,所述对应用源码的文件目录结构进行分析,生成分析配置文件具体为:
遍历应用源码的目录树,获取包含有头文件、源文件或库文件的目录路径;
根据所述目录路径,生成分析配置文件。
由上述描述可知,通过对应用源码的文件目录结构进行分析,获取包含头文件和库文件的目录路径,并获取包含源文件的目录路径,便于后续直接填入预设的构建脚本模板中。
进一步地,所述遍历应用源码的目录树,获取包含有头文件、源文件或库文件的目录路径之后,进一步包括:
判断所述目录路径中是否包含重名的头文件、重名的源文件或重名的库文件;
若是,则将重名的文件的名称修改为唯一名称。
由上述描述可知,避免因重名的文件而编译出错。
进一步地,所述根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本具体为:
将所述用户配置文件、默认配置文件和分析配置文件中的配置信息调入至预设的构建脚本模板中的相应位置,生成构建脚本;
将所述构建脚本保存至应用源码的根目录下。
由上述描述可知,可降低静态脚本生成的复杂度。
进一步地,所述在应用源码的根目录下创建输出目录具体为:
判断所述构建脚本是否是初次编译;
若是,则在应用源码的根目录下创建输出目录。
由上述描述可知,便于后续寻找编译输出的文件。
本发明还提出一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现以下步骤:
根据用户配置,生成用户配置文件和默认配置文件;
对应用源码的文件目录结构进行分析,生成分析配置文件;
根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本;
在应用源码的根目录下创建输出目录;
调用构建工具解析所述构建脚本,生成编译脚本,并将所述编译脚本保存至所述输出目录下;
在所述输出目录下运行编译命令,生成应用程序。
进一步地,所述对应用源码的文件目录结构进行分析,生成分析配置文件具体为:
遍历应用源码的目录树,获取包含有头文件、源文件或库文件的目录路径;
根据所述目录路径,生成分析配置文件。
进一步地,所述遍历应用源码的目录树,获取包含有头文件、源文件或库文件的目录路径之后,进一步包括:
判断所述目录路径中是否包含重名的头文件、重名的源文件或重名的库文件;
若是,则将重名的文件的名称修改为唯一名称。
进一步地,所述根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本具体为:
将所述用户配置文件、默认配置文件和分析配置文件中的配置信息调入至预设的构建脚本模板中的相应位置,生成构建脚本;
将所述构建脚本保存至应用源码的根目录下。
进一步地,所述在应用源码的根目录下创建输出目录具体为:
判断所述构建脚本是否是初次编译;
若是,则在应用源码的根目录下创建输出目录。
实施例一
请参照图1,本发明的实施例一为:一种应用程序的自动编译方法,适用于ARM体系结构上的linux应用开发场景,包括如下步骤:
S1:根据用户配置,生成用户配置文件和默认配置文件。
本实施例中,主要可支持的配置如表1所示。
首次对某个应用源码项目进行编译时会要求用户进行配置,如果用户不需要自己定制,都使用默认配置就可以了。例如,对于自定义交叉编译工具链安装路径,本实施例默认使用的是linaro公司的ARM交叉编译二进制工具链,它可以支持市面上大部分主流的ARM系统结构的SOC芯片,编译出来的应用都可以在上面运行。当然如果用户可希望使用ARM芯片制造商提供的交叉编译工具链,也可以进行自己指定其安装路径以及其交叉编译工具的前缀。另外,对于ARM体系结构类型和ARM处理器名称,用户最好指定自己使用的ARM芯片的体系结构类型和ARM处理器名称类型,比如ARM体系结构类型支持armv6,armv7,armv8-a等等,具体支持的所有选项可以参考gcc手册的-march,-mtune选项,这样编译出来的程序就能根据ARM这些类型把性能调整成最好。
在实际应用场景中,用户配置完成之后,将生成用户配置文件和默认配置文件(用户未指定部分)。之后在对项目源码进行配置时会预先去读取用户配置文件和默认配置文件,并询问用户是否要删除旧配置进行重新配置,或者是对现有的配置进行修改,如果删除配置则旧配置会被全部删除再进行重新配置,如果只是对现有配置进行修改,则从头进行一项一项修改和确认,用户不想修改当前项可以跳到下一项,如果是最后一项了会询问退出保存,或者退出放弃保存。
表1:用户可配置项表
本实施例提供了比较丰富的用户交互配置选项,可以满足专家级的编译定制需求。
S2:对应用源码的文件目录结构进行分析,生成分析配置文件。具体地,遍历应用源码的目录树,获取包含有头文件、源文件或库文件的目录路径;其中,可根据文件的后缀进行判断,例如,后缀为.h、.hpp、.hxxz的是头文件,后缀为.c、.cpp、.cc、.cxx、.c++的是源文件,后缀为.a、.so的是库文件。然后判断是否包含重名的头文件、重名的源文件或重名的库文件,如果有,需要用户确认并将重名的文件名称修改为唯一名称。然后将包含有头文件的目录路径、包含有源文件的目录路径以及包含有库文件的目录路径输出到分析配置文件中,分析配置文件中的分析配置项如表2所示,其中,include目录路径即头文件目录路径。完成分析后,会生成分析配置文件。
表2:分析配置项表
分析生成配置项 | 说明 |
include目录路径 | 可能有多个include的路径,但每个路径都是唯一的 |
库目录路径 | 可能有多个库的路径,但每个路径都是唯一的,包含静态和动态的库 |
源文件目录路径 | 可能有多个源文件的路径,但每个路径都是唯一的 |
进一步地,若同一个目录路径中有多个头文件、多个库文件或多个源文件,只会在对应的配置项中被记录一次,不会在同一配置项中重复记录多次。
例如,一个项目app_src源码目录结构如图2所示,分析完之后得到的有效的头文件目录路径为:app_src/include/、app_src/sub1/include/、app_src/sub2/include/;有效的库文件目录路径为:app_src/lib/;有效的源文件目录路径为:app_src/、app_src/sub1/、app_src/sub2/。
S3:根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本。具体地,将所述用户配置文件、默认配置文件和分析配置文件中的配置信息调入至预设的构建脚本模板中的相应位置,生成构建脚本;然后将所述构建脚本保存至应用源码的根目录下。
本实施例中,预先设置了一份静态的cmake构建脚本的模板,该模板预留了需要通过配置(上述三个配置文件)去生成的动态信息,包括交叉编译信息、程序的名字、生成库/可执行程序、ARM硬件相关编译选项和链接选项、include路径和库路径(用户指定的以及步骤S3分析出来的)、通用的编译和链接选项、用户自定义的宏、编译选项、链接选项、项目用到的库名字等等,以及步骤S3分析出来的所有的待编译的源文件(C/C++的)。
通过分析上述三个配置文件,即用户配置文件、默认配置文件和分析配置文件,并把相应的配置信息按序调入模板中,例如,按照表1和表2所示的顺序,一项项将配置信息整合到模板的对应位置,比如编译选项就放到模板编译选项的末尾。最终在应用源码的根目录下生成一个CMakeLists.txt脚本,如图3所示。
本实施例并没有在每个源文件目录路径(如sub1,sub2)下面设计去放置CMakeLists.txt,而是把所有cmake脚本要做的处理全放在根目录下的CMakeLists.txt中,主要是为了降低静态脚本生成模板的复杂度,虽然降低了整个自动生成cmake编译框架的可读性,但是通常来说,用户也不会去读自动生成的cmake脚本源码。
S4:在应用源码的根目录下创建输出目录。具体地,判断所述构建脚本是否是初次编译;若是,则在应用源码的根目录下创建输出目录build。
S5:调用构建工具解析所述构建脚本,生成编译脚本,并将所述编译脚本保存至所述输出目录下。本实施例中,调用cmake工具来解析CMakeLists.txt脚本,去自动生成整个应用程序的编译要用的所有makefile文件,makefile文件都放置在build目录下。
S6:在所述输出目录下运行编译命令,生成应用程序。即在build目录下运行make命令,make会按makefile文件中的规则去调用交叉编译工具(如arm-xxx-gcc/g++)来实现目标的编译、链接并最终生成可执行的应用程序/库等。
本实施例只需进行简单的交互配置或者使用默认配置,就能对linux应用程序源码进行自动分析生成配置文件,并根据默认配置文件、用户配置文件、分析配置文件去自动生成cmake的构建框架,进而去自动生成编译用的makefile脚本,从而完成对linux应用程序自动编译。解决了应用编译场景下的编译脚本难学,编译框架开发周期长,编译框架维护麻烦等问题。
实施例二
本实施例是对应上述实施例的一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现以下步骤:
根据用户配置,生成用户配置文件和默认配置文件;
对应用源码的文件目录结构进行分析,生成分析配置文件;
根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本;
在应用源码的根目录下创建输出目录;
调用构建工具解析所述构建脚本,生成编译脚本,并将所述编译脚本保存至所述输出目录下;
在所述输出目录下运行编译命令,生成应用程序。
进一步地,所述对应用源码的文件目录结构进行分析,生成分析配置文件具体为:
遍历应用源码的目录树,获取包含有头文件、源文件或库文件的目录路径;
根据所述目录路径,生成分析配置文件。
进一步地,所述遍历应用源码的目录树,获取包含有头文件、源文件或库文件的目录路径之后,进一步包括:
判断所述目录路径中是否包含重名的头文件、重名的源文件或重名的库文件;
若是,则将重名的文件的名称修改为唯一名称。
进一步地,所述根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本具体为:
将所述用户配置文件、默认配置文件和分析配置文件中的配置信息调入至预设的构建脚本模板中的相应位置,生成构建脚本;
将所述构建脚本保存至应用源码的根目录下。
进一步地,所述在应用源码的根目录下创建输出目录具体为:
判断所述构建脚本是否是初次编译;
若是,则在应用源码的根目录下创建输出目录。
综上所述,本发明提供的一种应用程序的自动编译方法及计算机可读存储介质,只需要简单的配置或者不用配置就能对待编译的应用源码进行自动化的编译,解决了对撰写编译框架及脚本对开发人员要求比较高的问题,开发人员只需专注应用程序相关的开发,把开发人员从编译系统的构建中解放出来,从而解决了应用编译场景下的编译脚本难学、编译框架开发周期长、编译框架维护麻烦等问题。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种应用程序的自动编译方法,其特征在于,包括:
根据用户配置,生成用户配置文件和默认配置文件;
对应用源码的文件目录结构进行分析,生成分析配置文件;
根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本;
在应用源码的根目录下创建输出目录;
调用构建工具解析所述构建脚本,生成编译脚本,并将所述编译脚本保存至所述输出目录下;
在所述输出目录下运行编译命令,生成应用程序。
2.根据权利要求1所述的应用程序的自动编译方法,其特征在于,所述对应用源码的文件目录结构进行分析,生成分析配置文件具体为:
遍历应用源码的目录树,获取包含有头文件、源文件或库文件的目录路径;
根据所述目录路径,生成分析配置文件。
3.根据权利要求2所述的应用程序的自动编译方法,其特征在于,所述遍历应用源码的目录树,获取包含有头文件、源文件或库文件的目录路径之后,进一步包括:
判断所述目录路径中是否包含重名的头文件、重名的源文件或重名的库文件;
若是,则将重名的文件的名称修改为唯一名称。
4.根据权利要求1所述的应用程序的自动编译方法,其特征在于,所述根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本具体为:
将所述用户配置文件、默认配置文件和分析配置文件中的配置信息调入至预设的构建脚本模板中的相应位置,生成构建脚本;
将所述构建脚本保存至应用源码的根目录下。
5.根据权利要求1所述的应用程序的自动编译方法,其特征在于,所述在应用源码的根目录下创建输出目录具体为:
判断所述构建脚本是否是初次编译;
若是,则在应用源码的根目录下创建输出目录。
6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现以下步骤:
根据用户配置,生成用户配置文件和默认配置文件;
对应用源码的文件目录结构进行分析,生成分析配置文件;
根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本;
在应用源码的根目录下创建输出目录;
调用构建工具解析所述构建脚本,生成编译脚本,并将所述编译脚本保存至所述输出目录下;
在所述输出目录下运行编译命令,生成应用程序。
7.根据权利要求6所述的计算机可读存储介质,其特征在于,所述对应用源码的文件目录结构进行分析,生成分析配置文件具体为:
遍历应用源码的目录树,获取包含有头文件、源文件或库文件的目录路径;
根据所述目录路径,生成分析配置文件。
8.根据权利要求7所述的计算机可读存储介质,其特征在于,所述遍历应用源码的目录树,获取包含有头文件、源文件或库文件的目录路径之后,进一步包括:
判断所述目录路径中是否包含重名的头文件、重名的源文件或重名的库文件;
若是,则将重名的文件的名称修改为唯一名称。
9.根据权利要求6所述的计算机可读存储介质,其特征在于,所述根据所述用户配置文件、默认配置文件和分析配置文件,生成构建脚本具体为:
将所述用户配置文件、默认配置文件和分析配置文件中的配置信息调入至预设的构建脚本模板中的相应位置,生成构建脚本;
将所述构建脚本保存至应用源码的根目录下。
10.根据权利要求6所述的计算机可读存储介质,其特征在于,所述在应用源码的根目录下创建输出目录具体为:
判断所述构建脚本是否是初次编译;
若是,则在应用源码的根目录下创建输出目录。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811517027.2A CN111309327A (zh) | 2018-12-12 | 2018-12-12 | 应用程序的自动编译方法及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811517027.2A CN111309327A (zh) | 2018-12-12 | 2018-12-12 | 应用程序的自动编译方法及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111309327A true CN111309327A (zh) | 2020-06-19 |
Family
ID=71158190
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811517027.2A Pending CN111309327A (zh) | 2018-12-12 | 2018-12-12 | 应用程序的自动编译方法及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111309327A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111857725A (zh) * | 2020-07-17 | 2020-10-30 | 山东云海国创云计算装备产业创新中心有限公司 | 一种Makefile文件生成方法、装置、设备及介质 |
CN111913694A (zh) * | 2020-08-04 | 2020-11-10 | 深圳大趋智能科技有限公司 | 一种自动识别平台编译的方法和系统 |
CN112506518A (zh) * | 2020-12-01 | 2021-03-16 | 东软睿驰汽车技术(沈阳)有限公司 | 基于配置文件的编译方法和装置 |
CN112596734A (zh) * | 2020-12-15 | 2021-04-02 | 五八同城信息技术有限公司 | 静态库生成方法及装置 |
CN113064692A (zh) * | 2021-04-06 | 2021-07-02 | 深圳市研强物联技术有限公司 | 一种固件图片资源数据的生成方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130097414A1 (en) * | 2011-10-17 | 2013-04-18 | Honeywell International Inc. | Methods and reconfigurable systems to incorporate customized executable code within a condition based health maintenance system without recompiling base code |
CN103853589A (zh) * | 2014-02-26 | 2014-06-11 | 上海爱数软件有限公司 | 一种跨平台的系统编译构建方法 |
CN104572231A (zh) * | 2013-10-23 | 2015-04-29 | 航天信息股份有限公司 | 不同操作平台之间的工程移植方法和装置 |
CN105843623A (zh) * | 2016-03-29 | 2016-08-10 | 乐视控股(北京)有限公司 | 目标程序的生成方法和装置 |
CN108304184A (zh) * | 2016-08-09 | 2018-07-20 | 上海思立微电子科技有限公司 | 编译方法及装置 |
-
2018
- 2018-12-12 CN CN201811517027.2A patent/CN111309327A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130097414A1 (en) * | 2011-10-17 | 2013-04-18 | Honeywell International Inc. | Methods and reconfigurable systems to incorporate customized executable code within a condition based health maintenance system without recompiling base code |
CN104572231A (zh) * | 2013-10-23 | 2015-04-29 | 航天信息股份有限公司 | 不同操作平台之间的工程移植方法和装置 |
CN103853589A (zh) * | 2014-02-26 | 2014-06-11 | 上海爱数软件有限公司 | 一种跨平台的系统编译构建方法 |
CN105843623A (zh) * | 2016-03-29 | 2016-08-10 | 乐视控股(北京)有限公司 | 目标程序的生成方法和装置 |
CN108304184A (zh) * | 2016-08-09 | 2018-07-20 | 上海思立微电子科技有限公司 | 编译方法及装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111857725A (zh) * | 2020-07-17 | 2020-10-30 | 山东云海国创云计算装备产业创新中心有限公司 | 一种Makefile文件生成方法、装置、设备及介质 |
CN111913694A (zh) * | 2020-08-04 | 2020-11-10 | 深圳大趋智能科技有限公司 | 一种自动识别平台编译的方法和系统 |
CN112506518A (zh) * | 2020-12-01 | 2021-03-16 | 东软睿驰汽车技术(沈阳)有限公司 | 基于配置文件的编译方法和装置 |
CN112506518B (zh) * | 2020-12-01 | 2023-07-14 | 东软睿驰汽车技术(沈阳)有限公司 | 基于配置文件的编译方法和装置 |
CN112596734A (zh) * | 2020-12-15 | 2021-04-02 | 五八同城信息技术有限公司 | 静态库生成方法及装置 |
CN113064692A (zh) * | 2021-04-06 | 2021-07-02 | 深圳市研强物联技术有限公司 | 一种固件图片资源数据的生成方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111309327A (zh) | 应用程序的自动编译方法及计算机可读存储介质 | |
US10073684B2 (en) | Adaptive selection of programming language versions for compilation of software programs | |
US8392880B2 (en) | Rapid application development for database-aware applications | |
US10331425B2 (en) | Automated source code adaption to inject features between platform versions | |
CN104077140A (zh) | 用于持续集成的自动化编译方法和编译装置 | |
KR101706425B1 (ko) | 코드의 단위 테스트를 위한 장치 및 방법 | |
JP6217277B2 (ja) | ソフトウェア開発方法及びそのためのシステム | |
CN106775744B (zh) | 一种生成静态库的方法和装置 | |
CN106293664A (zh) | 代码生成方法及装置 | |
US9405866B1 (en) | Automating a microarchitecture design exploration environment | |
CN105718251A (zh) | 多语言sdk自动化实现方法及系统 | |
CN110806868A (zh) | 一种单页面搭建及加载方法 | |
WO2016062152A1 (zh) | 网元巡检方法及装置 | |
CN107015903B (zh) | 一种界面测试程序的生成方法、装置及电子设备 | |
CN114371850A (zh) | 项目构建编译和代码开发的管理方法 | |
CN104317580A (zh) | 虚拟试验应用集成开发环境 | |
CN110928760A (zh) | 一种嵌入式系统中的单元测试方法与装置 | |
CN115794214B (zh) | 应用模块元数据管理方法、设备、存储介质及装置 | |
CN110457013B (zh) | 程序组件配置装置及方法 | |
CN114721647B (zh) | 一种基于无代码应用开发的面向对象编程方法 | |
CN111552480A (zh) | 跨平台编译方法、装置、设备及可读存储介质 | |
CN113641594B (zh) | 跨端自动化测试方法以及相关装置 | |
CN115964045A (zh) | 一种跨架构的操作系统快速自动化构建的方法、装置及介质 | |
US9646118B1 (en) | Linking of simulators into a circuit design tool | |
JP3266097B2 (ja) | 非リエントラントプログラムの自動リエントラント化方法及びシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |