CN117251165B - Buildroot compilation method, device, terminal and medium - Google Patents
Buildroot compilation method, device, terminal and medium Download PDFInfo
- Publication number
- CN117251165B CN117251165B CN202311079472.6A CN202311079472A CN117251165B CN 117251165 B CN117251165 B CN 117251165B CN 202311079472 A CN202311079472 A CN 202311079472A CN 117251165 B CN117251165 B CN 117251165B
- Authority
- CN
- China
- Prior art keywords
- buildroot
- dependency
- dependency package
- compilation
- address path
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种Buildroot编译方法、装置、终端及介质,通过先将下载的最新版本的所有Buildroot依赖包保存,再对参与编译的代码所需的各Buildroot依赖包进行适配,以将编译过程中获取Buildroot依赖包的地址路径指定为所述预设地址路径,最后按照所述预设地址路径对参与编译的各Buildroot依赖包进行交叉编译。本发明不需要下载依赖包,因此不会因为网络问题导致依赖包下载不全,还大大的节省时间,保证了依赖包的完整性且编译稳定。
The present invention provides a Buildroot compilation method, device, terminal and medium, by first saving all Buildroot dependency packages of the latest version downloaded, and then adapting each Buildroot dependency package required by the code involved in the compilation, so as to designate the address path for obtaining the Buildroot dependency package during the compilation process as the preset address path, and finally cross-compile each Buildroot dependency package involved in the compilation according to the preset address path. The present invention does not need to download dependency packages, so the dependency packages will not be incompletely downloaded due to network problems, and time is greatly saved, and the integrity of the dependency packages is guaranteed and the compilation is stable.
Description
技术领域Technical Field
本发明涉及计算机技术领域,特别是涉及一种Buildroot编译方法、装置、终端及介质。The present invention relates to the field of computer technology, and in particular to a Buildroot compilation method, device, terminal and medium.
背景技术Background technique
Buildroot是Linux平台上一个开源的嵌入式Linux系统自动构建框架。整个Buildroot是由Makefile脚本和Kconfig配置文件构成的。可以和编译Linux内核一样,通过buildroot配置,menuconfig修改,编译出一个完整的可以直接烧写到机器上运行的Linux系统软件。Buildroot is an open source automatic build framework for embedded Linux systems on the Linux platform. The entire Buildroot is composed of Makefile scripts and Kconfig configuration files. Just like compiling the Linux kernel, you can compile a complete Linux system software that can be directly burned to the machine and run by configuring buildroot and modifying menuconfig.
Buildroot在build的过程中会下载大量的依赖包,如果在网络不稳定的情况下,会导致下载依赖包中断,或者无法访问。依赖包下载不完全,按照依赖包逐个编译,那么会出现编译成功的假象,实际编译是失败的,也会浪费大量时间。Buildroot will download a large number of dependency packages during the build process. If the network is unstable, the download of dependency packages will be interrupted or inaccessible. If the dependency packages are not downloaded completely and are compiled one by one, the compilation will appear to be successful, but the actual compilation will fail, which will also waste a lot of time.
发明内容Summary of the invention
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种Buildroot编译方法、装置、终端及介质,用于解决以上现有技术问题。In view of the above-mentioned shortcomings of the prior art, an object of the present invention is to provide a Buildroot compilation method, device, terminal and medium to solve the above-mentioned prior art problems.
为实现上述目的及其他相关目的,本发明提供一种Buildroot编译方法,所述方法包括:将下载的最新版本的所有Buildroot依赖包保存,并对应定义一预设地址路径;对参与编译的代码所需的各Buildroot依赖包进行适配,以供将编译过程中获取Buildroot依赖包的地址路径指定为所述预设地址路径;按照所述预设地址路径,对参与编译的各Buildroot依赖包进行交叉编译。To achieve the above-mentioned object and other related objects, the present invention provides a Buildroot compilation method, the method comprising: saving all Buildroot dependency packages of the latest version downloaded, and correspondingly defining a preset address path; adapting each Buildroot dependency package required by the code involved in the compilation, so that the address path for obtaining the Buildroot dependency package during the compilation process is designated as the preset address path; and cross-compiling each Buildroot dependency package involved in the compilation according to the preset address path.
于本发明的一实施例中,对参与编译的各Buildroot依赖包进行适配包括:确定参与编译的代码所需的各Buildroot依赖包的版本是否正确;在版本正确的情况下,去除用于在编译过程中对应下载Buildroot依赖包的下载信息;将对应在编译过程中获取Buildroot依赖包的地址路径设置为所述预设地址路径。In one embodiment of the present invention, adapting each Buildroot dependency package involved in the compilation includes: determining whether the version of each Buildroot dependency package required by the code involved in the compilation is correct; if the version is correct, removing the download information used to download the corresponding Buildroot dependency package during the compilation process; and setting the address path for obtaining the corresponding Buildroot dependency package during the compilation process to the preset address path.
于本发明的一实施例中,确定参与编译的代码所需的各Buildroot依赖包的版本是否正确包括:在保存的所有Buildroot依赖包中确定参与编译的代码所需的各Buildroot依赖包;判断确定的各Buildroot依赖包的版本是否符合代码编译所要求的Buildroot依赖包版本;若符合,则为版本正确;若不符合,则版本不正确,需重新下载最新版本的Buildroot依赖包。In one embodiment of the present invention, determining whether the versions of each Buildroot dependency package required for the code involved in the compilation are correct includes: determining each Buildroot dependency package required for the code involved in the compilation among all saved Buildroot dependency packages; judging whether the versions of each determined Buildroot dependency package meet the Buildroot dependency package version required for the code compilation; if so, the version is correct; if not, the version is incorrect and the latest version of the Buildroot dependency package needs to be downloaded again.
于本发明的一实施例中,去除用于在编译过程中对应下载Buildroot依赖包的下载信息包括:去除代码中对应下载所需的各Buildroot依赖包的下载信息,并且分别去除所需的各Buildroot依赖包中对应下载关联Buildroot依赖包的下载信息。In one embodiment of the present invention, removing the download information corresponding to the download of the Buildroot dependency package during the compilation process includes: removing the download information of each Buildroot dependency package required for the corresponding download in the code, and removing the download information of the corresponding download of the associated Buildroot dependency package in each required Buildroot dependency package.
于本发明的一实施例中,将对应在编译过程中获取Buildroot依赖包的地址路径设置为所述预设地址路径包括:将代码中用于获取所需的各Buildroot依赖包的地址路径以及各Buildroot依赖包中用于获取关联Buildroot依赖包的地址路径设置为所述预设地址路径。In one embodiment of the present invention, setting the address path corresponding to obtaining the Buildroot dependency package during the compilation process as the preset address path includes: setting the address path in the code for obtaining each required Buildroot dependency package and the address path in each Buildroot dependency package for obtaining the associated Buildroot dependency package to the preset address path.
于本发明的一实施例中,将各Buildroot依赖包中用于获取关联Buildroot依赖包的地址路径设置为所述预设地址路径的方式包括:将用于获取Buildroot依赖包中的补丁文件、编译文件以及安装文件各自所需的Buildroot依赖包的地址路径分别设置为所述预设地址路径。In one embodiment of the present invention, the method of setting the address path in each Buildroot dependency package for obtaining the associated Buildroot dependency package as the preset address path includes: setting the address paths of the Buildroot dependency packages required for obtaining the patch files, compilation files, and installation files in the Buildroot dependency package to the preset address paths, respectively.
为实现上述目的及其他相关目的,本发明提供一种Buildroot编译装置,所述装置包括:依赖包保存模块,用于将下载的最新版本的所有Buildroot依赖包保存,并对应定义一预设地址路径;依赖包适配模块,连接所述依赖包保存模块,用于对参与编译的代码所需的各Buildroot依赖包进行适配,以供将编译过程中获取Buildroot依赖包的地址路径指定为所述预设地址路径;编译模块,连接所述依赖包适配模块,用于按照所述预设地址路径,对参与编译的各Buildroot依赖包进行交叉编译。To achieve the above-mentioned purpose and other related purposes, the present invention provides a Buildroot compilation device, which includes: a dependency package saving module, used to save all Buildroot dependency packages of the latest version downloaded, and define a preset address path accordingly; a dependency package adaptation module, connected to the dependency package saving module, used to adapt each Buildroot dependency package required by the code involved in the compilation, so that the address path of the Buildroot dependency package obtained during the compilation process is specified as the preset address path; a compilation module, connected to the dependency package adaptation module, used to cross-compile each Buildroot dependency package involved in the compilation according to the preset address path.
于本发明的一实施例中,所述依赖包适配模块包括:版本确定单元,用于确定参与编译的代码所需的各Buildroot依赖包的版本是否正确;下载信息去除单元,连接所述版本确定单元,用于在版本正确的情况下,去除用于在编译过程中对应下载Buildroot依赖包的下载信息;地址路径设置单元,连接所述下载信息去除单元,用于将对应在编译过程中获取Buildroot依赖包的地址路径设置为所述预设地址路径。In one embodiment of the present invention, the dependency package adaptation module includes: a version determination unit, used to determine whether the version of each Buildroot dependency package required by the code involved in the compilation is correct; a download information removal unit, connected to the version determination unit, used to remove the download information used to download the corresponding Buildroot dependency package during the compilation process when the version is correct; an address path setting unit, connected to the download information removal unit, used to set the address path corresponding to obtaining the Buildroot dependency package during the compilation process to the preset address path.
为实现上述目的及其他相关目的,本发明提供一种Buildroot编译终端,包括:一或多个存储器及一或多个处理器;所述一或多个存储器,用于存储计算机程序;所述一或多个处理器,连接所述存储器,用于运行所述计算机程序以执行所述Buildroot编译方法。To achieve the above-mentioned object and other related objects, the present invention provides a Buildroot compilation terminal, comprising: one or more memories and one or more processors; the one or more memories are used to store computer programs; the one or more processors are connected to the memories and are used to run the computer program to execute the Buildroot compilation method.
为实现上述目的及其他相关目的,本发明提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被一个或多个处理器运行时执行所述Buildroot编译方法。To achieve the above objectives and other related objectives, the present invention provides a computer-readable storage medium storing a computer program, wherein the computer program executes the Buildroot compilation method when executed by one or more processors.
如上所述,本发明是一种Buildroot编译方法、装置、终端及介质,具有以下有益效果:本发明通过先将下载的最新版本的所有Buildroot依赖包保存,再对参与编译的代码所需的各Buildroot依赖包进行适配,以将编译过程中获取Buildroot依赖包的地址路径指定为所述预设地址路径,最后按照所述预设地址路径对参与编译的各Buildroot依赖包进行交叉编译。本发明不需要下载依赖包,因此不会因为网络问题导致依赖包下载不全,还大大的节省时间,保证了依赖包的完整性且编译稳定。As described above, the present invention is a Buildroot compilation method, device, terminal and medium, which has the following beneficial effects: the present invention first saves all the Buildroot dependency packages of the latest version downloaded, and then adapts the Buildroot dependency packages required by the code involved in the compilation, so as to specify the address path for obtaining the Buildroot dependency package during the compilation process as the preset address path, and finally cross-compiles the Buildroot dependency packages involved in the compilation according to the preset address path. The present invention does not need to download dependency packages, so the dependency packages will not be incompletely downloaded due to network problems, and it also greatly saves time, ensures the integrity of the dependency packages and stable compilation.
附图说明BRIEF DESCRIPTION OF THE DRAWINGS
图1显示为本发明一实施例中的Buildroot编译方法的流程示意图。FIG. 1 is a schematic flow chart of a Buildroot compilation method according to an embodiment of the present invention.
图2显示为传统的Buildroot编译方法的流程示意图。FIG. 2 is a flow chart showing a conventional Buildroot compilation method.
图3显示为本发明一实施例中的Buildroot编译方法的流程示意图。FIG. 3 is a schematic diagram showing a flow chart of a Buildroot compilation method in an embodiment of the present invention.
图4显示为本发明一实施例中的Buildroot编译系统的结构示意图。FIG. 4 is a schematic diagram showing the structure of a Buildroot compilation system in an embodiment of the present invention.
图5显示为本发明一实施例中的依赖包适配模块的结构示意图。FIG. 5 is a schematic diagram showing the structure of a dependency package adaptation module in an embodiment of the present invention.
图6显示为本发明一实施例中的Buildroot编译终端的结构示意图。FIG. 6 is a schematic diagram showing the structure of a Buildroot compilation terminal in an embodiment of the present invention.
具体实施方式Detailed ways
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。The following describes the embodiments of the present invention by specific examples, and those skilled in the art can easily understand other advantages and effects of the present invention from the contents disclosed in this specification. The present invention can also be implemented or applied through other different specific embodiments, and the details in this specification can also be modified or changed in various ways based on different viewpoints and applications without departing from the spirit of the present invention. It should be noted that the following embodiments and features in the embodiments can be combined with each other without conflict.
需要说明的是,在下述描述中,参考附图,附图描述了本发明的若干实施例。应当理解,还可使用其他实施例,并且可以在不背离本发明的精神和范围的情况下进行机械组成、结构、电气以及操作上的改变。下面的详细描述不应该被认为是限制性的,并且本发明的实施例的范围仅由公布的专利的权利要求书所限定。这里使用的术语仅是为了描述特定实施例,而并非旨在限制本发明。空间相关的术语,例如“上”、“下”、“左”、“右”、“下面”、“下方”、““下部”、“上方”、“上部”等,可在文中使用以便于说明图中所示的一个元件或特征与另一元件或特征的关系。It should be noted that in the following description, reference is made to the accompanying drawings, which describe several embodiments of the present invention. It should be understood that other embodiments may also be used, and that mechanical composition, structural, electrical and operational changes may be made without departing from the spirit and scope of the present invention. The following detailed description should not be considered restrictive, and the scope of the embodiments of the present invention is limited only by the claims of the published patents. The terms used here are only for describing specific embodiments and are not intended to limit the present invention. Spatially related terms, such as "upper", "lower", "left", "right", "below", "below", "lower", "above", "upper", etc., may be used in the text to facilitate the description of the relationship between an element or feature shown in the figure and another element or feature.
在通篇说明书中,当说某部分与另一部分“连接”时,这不仅包括“直接连接”的情形,也包括在其中间把其它元件置于其间而“间接连接”的情形。另外,当说某种部分“包括”某种构成要素时,只要没有特别相反的记载,则并非将其它构成要素,排除在外,而是意味着可以还包括其它构成要素。Throughout the specification, when a part is said to be "connected" to another part, this includes not only the case of "direct connection" but also the case of "indirect connection" by placing other elements therebetween. In addition, when a part is said to "include" a certain constituent element, unless otherwise stated, it does not exclude other constituent elements, but means that other constituent elements may be included.
其中提到的第一、第二及第三等术语是为了说明多样的部分、成分、区域、层及/或段而使用的,但并非限定于此。这些术语只用于把某部分、成分、区域、层或段区别于其它部分、成分、区域、层或段。因此,以下叙述的第一部分、成分、区域、层或段在不超出本发明范围的范围内,可以言及到第二部分、成分、区域、层或段。The terms first, second and third are used to describe various parts, components, regions, layers and/or segments, but are not limited thereto. These terms are only used to distinguish a certain part, component, region, layer or segment from other parts, components, regions, layers or segments. Therefore, the first part, component, region, layer or segment described below may refer to the second part, component, region, layer or segment within the scope of the present invention.
再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。因此,“A、B或C”或者“A、B和/或C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A、B和C”。仅当元件、功能或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。Furthermore, as used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless there is an indication to the contrary in the context. It should be further understood that the terms "comprise", "include" indicate the presence of the described features, operations, elements, components, items, kinds, and/or groups, but do not exclude the presence, occurrence or addition of one or more other features, operations, elements, components, items, kinds, and/or groups. The terms "or" and "and/or" used herein are interpreted as inclusive, or mean any one or any combination. Therefore, "A, B or C" or "A, B and/or C" means "any of the following: A; B; C; A and B; A and C; B and C; A, B and C". Exceptions to this definition will only occur when the combination of elements, functions or operations is inherently mutually exclusive in some way.
本发明提供一种Buildroot编译方法,通过先将下载的最新版本的所有Buildroot依赖包保存,再对参与编译的代码所需的各Buildroot依赖包进行适配,以将编译过程中获取Buildroot依赖包的地址路径指定为所述预设地址路径,最后按照所述预设地址路径对参与编译的各Buildroot依赖包进行交叉编译。本发明不需要下载依赖包,因此不会因为网络问题导致依赖包下载不全,还大大的节省时间,保证了依赖包的完整性且编译稳定。The present invention provides a Buildroot compilation method, by first saving all Buildroot dependency packages of the latest version downloaded, and then adapting each Buildroot dependency package required by the code involved in the compilation, so as to designate the address path for obtaining the Buildroot dependency package during the compilation process as the preset address path, and finally cross-compile each Buildroot dependency package involved in the compilation according to the preset address path. The present invention does not need to download dependency packages, so the dependency packages will not be incompletely downloaded due to network problems, and time is greatly saved, and the integrity of the dependency packages is guaranteed and the compilation is stable.
与此同时,为了使本发明的目的、技术方案及优点更加清楚明白,通过下述实施例并结合附图,对本发明实施例中的技术方案的进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定发明。At the same time, in order to make the purpose, technical solution and advantages of the present invention more clear, the technical solution in the embodiment of the present invention is further described in detail through the following embodiments and in combination with the accompanying drawings. It should be understood that the specific embodiments described here are only used to explain the present invention and are not used to limit the invention.
在对本发明进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释:Before further describing the present invention in detail, the nouns and terms involved in the embodiments of the present invention are explained. The nouns and terms involved in the embodiments of the present invention are applicable to the following interpretations:
<1>Build:是对整个工程进行彻底的重新编译,而不管是否已经编译过。Build过程往往会生成发布包,这个具体要看对IDE的配置了,Build在实际中应用很少,因为开发时候基本上不用,发布生产时候一般都用ANT等工具来发布。<1>Build: It is to recompile the entire project completely, regardless of whether it has been compiled before. The build process often generates a release package, which depends on the configuration of the IDE. Build is rarely used in practice because it is basically not used during development. When releasing to production, it is generally released using tools such as ANT.
<2>Buildroot:是Linux平台上一个开源的嵌入式Linux系统自动构建框架。整个Buildroot是由Makefile脚本和Kconfig配置文件构成的。可以和编译Linux内核一样,通过buildroot配置,menuconfig修改,编译出一个完整的可以直接烧写到机器上运行的Linux系统软件(包含boot、kernel、rootfs以及rootfs中的各种库和应用程序)。<2>Buildroot: It is an open source automatic build framework for embedded Linux systems on the Linux platform. The entire Buildroot is composed of Makefile scripts and Kconfig configuration files. Just like compiling the Linux kernel, you can compile a complete Linux system software (including boot, kernel, rootfs, and various libraries and applications in rootfs) that can be directly burned to the machine and run through buildroot configuration and menuconfig modification.
<3>编译:将某种程序设计语言编译的程序翻译成二进制语言描述的可执行代码或程序。<3> Compilation: Translate a program compiled in a certain programming language into executable code or program described in binary language.
<4>交叉编译:可以理解为在当前编译平台编译出的程序能运行在体系结构不同的另一种目标平台上。<4> Cross-compilation: It can be understood that the program compiled on the current compilation platform can run on another target platform with a different architecture.
<5>makefile:makefile文件描述了整个工程中所有文件的编译顺序,编译规则。Makefile也有自己的编写规则,通常,我们所使用的IDE都会生成相应的makefile,然后再根据makefile来进行编译,只是这些操作是由IDE来完成,我们只需要点击一个编译按钮。<5> Makefile: The makefile describes the compilation order and compilation rules of all files in the entire project. Makefile also has its own writing rules. Usually, the IDE we use will generate the corresponding makefile, and then compile according to the makefile, but these operations are completed by the IDE, and we only need to click a compile button.
<6>Kconfig:是一个文本形式的文件,其中主要作用是在内核配置的时候,作为配置选项,配置各种配置界面源文件。<6>Kconfig: It is a text file, which is mainly used as a configuration option to configure various configuration interface source files during kernel configuration.
<7>menuconfig:是一个可以在终端显示的图形化配置界面,他不仅可以极大的方便我们对于配置文件的修改,还能自动处理依赖关系。<7>menuconfig: is a graphical configuration interface that can be displayed on the terminal. It not only greatly facilitates our modification of configuration files, but also automatically handles dependencies.
下面以附图为参考,针对本发明的实施例进行详细说明,以便本发明所述技术领域的技术人员能够容易地实施。本发明可以以多种不同形态体现,并不限于此处说明的实施例。The following is a detailed description of the embodiments of the present invention with reference to the accompanying drawings so that those skilled in the art can easily implement the present invention. The present invention can be embodied in many different forms and is not limited to the embodiments described herein.
如图1展示本发明实施例中的一种Buildroot编译方法的流程示意图。FIG1 is a schematic diagram showing a flow chart of a Buildroot compilation method according to an embodiment of the present invention.
所述方法包括:The method comprises:
步骤S1:将下载的最新版本的所有Buildroot依赖包保存,并对应定义一预设地址路径。Step S1: Save all Buildroot dependency packages of the latest version downloaded, and define a preset address path accordingly.
具体的,连接网络,下载最新版本的所有Buildroot依赖包,并保存在自己的项目下,对应该保存位置定义一预设地址路径。其中,Buildroot依赖包为Buildroot编译过程中依赖的软件包,例如一些库文件,有静态库也有动态库。Specifically, connect to the network, download the latest version of all Buildroot dependency packages, save them in your own project, and define a preset address path for the save location. Among them, Buildroot dependency packages are software packages that Buildroot relies on during the compilation process, such as some library files, including static libraries and dynamic libraries.
步骤S2:对参与编译的代码所需的各Buildroot依赖包进行适配,以供将编译过程中获取Buildroot依赖包的地址路径指定为所述预设地址路径。Step S2: adapting each Buildroot dependency package required by the code involved in the compilation, so as to designate the address path for obtaining the Buildroot dependency package during the compilation process as the preset address path.
在一实施例中,步骤S2包括:In one embodiment, step S2 includes:
确定参与编译的代码所需的各Buildroot依赖包的版本是否正确;Determine whether the versions of the Buildroot dependency packages required by the compiled code are correct;
在版本正确的情况下,去除用于在编译过程中对应下载Buildroot依赖包的下载信息;If the version is correct, remove the download information for downloading the corresponding Buildroot dependency package during the compilation process;
将对应在编译过程中获取Buildroot依赖包的地址路径设置为所述预设地址路径。The address path for obtaining the Buildroot dependency package during the compilation process is set to the preset address path.
通过以上方式可以实现将编译过程中获取Buildroot依赖包的地址路径指定为所述预设地址路径。In the above manner, the address path for obtaining the Buildroot dependency package during the compilation process can be specified as the preset address path.
在一具体实施例中,确定参与编译的代码所需的各Buildroot依赖包的版本是否正确包括:In a specific embodiment, determining whether the versions of the Buildroot dependency packages required by the compiled code are correct includes:
在保存的所有Buildroot依赖包中确定参与编译的代码所需的各Buildroot依赖包;具体的,从保存的所有Buildroot依赖包中拉取所需的各Buildroot依赖包;Determine the Buildroot dependency packages required for the compiled code from all the saved Buildroot dependency packages; specifically, pull the required Buildroot dependency packages from all the saved Buildroot dependency packages;
判断确定的各Buildroot依赖包的版本是否符合代码编译所要求的Buildroot依赖包版本;具体的,判断拉取的Buildroot依赖包的版本是否达到代码编译所要求的Buildroot依赖包版本;判断的方式可以为通过依赖包的版本号或依赖包的标识来判断。Determine whether the versions of the determined Buildroot dependency packages meet the Buildroot dependency package versions required for code compilation; specifically, determine whether the versions of the pulled Buildroot dependency packages meet the Buildroot dependency package versions required for code compilation; the determination method may be to determine by the version number of the dependency package or the identifier of the dependency package.
若符合,则为版本正确,则可进行后续步骤;If it matches, the version is correct and you can proceed to the next step;
若不符合,则版本不正确,需重新下载最新版本的Buildroot依赖包,并进行保存,重新进行Buildroot依赖包确定以及版本判断。If they do not match, the version is incorrect and you need to re-download the latest version of the Buildroot dependency package, save it, and re-determine the Buildroot dependency package and version.
在一具体实施例中,去除用于在编译过程中对应下载Buildroot依赖包的下载信息包括:In a specific embodiment, removing the download information for downloading the corresponding Buildroot dependency package during the compilation process includes:
去除代码中对应下载所需的各Buildroot依赖包的下载信息,并且分别去除所需的各Buildroot依赖包中对应下载关联Buildroot依赖包的下载信息。Remove the download information of each Buildroot dependency package required for download in the code, and remove the download information of the corresponding Buildroot dependency package in each required Buildroot dependency package.
具体的,去除的下载信息的主要分为两个部分:一个是对代码中在编译过程中需要下载所需的各Buildroot依赖包的下载信息进行去除;并且由于每个Buildroot依赖包可能还依赖其他Buildroot依赖包,因此还需对各Buildroot依赖包中在对应Buildroot依赖包进行编译时需要下载相关联的其他Buildroot依赖包的下载地址进行去除,即去除另一个部分;例如,依赖包A还依赖依赖包B以及C,则需在依赖包中去除下载依赖包B以及依赖包C的下载信息。Specifically, the removed download information is mainly divided into two parts: one is to remove the download information of each Buildroot dependency package that needs to be downloaded during the compilation process in the code; and because each Buildroot dependency package may also depend on other Buildroot dependency packages, it is also necessary to remove the download addresses of other associated Buildroot dependency packages that need to be downloaded when the corresponding Buildroot dependency package is compiled in each Buildroot dependency package, that is, remove another part; for example, dependency package A also depends on dependency packages B and C, then the download information of dependency packages B and C needs to be removed from the dependency package.
基于以上方式,在代码编译时下载各Buildroot依赖包,以及编译Buildroot依赖包时下载其他Buildroot依赖包的步骤均被跳过,不会执行。Based on the above method, the steps of downloading each Buildroot dependency package when compiling the code and downloading other Buildroot dependency packages when compiling the Buildroot dependency package are skipped and will not be executed.
在一具体实施例中,将对应在编译过程中获取Buildroot依赖包的地址路径设置为所述预设地址路径包括:将代码中用于获取所需的各Buildroot依赖包的地址路径以及各Buildroot依赖包中用于获取关联Buildroot依赖包的地址路径设置为所述预设地址路径。In a specific embodiment, setting the address path corresponding to obtaining the Buildroot dependency package during the compilation process to the preset address path includes: setting the address path in the code for obtaining each required Buildroot dependency package and the address path in each Buildroot dependency package for obtaining the associated Buildroot dependency package to the preset address path.
具体的,基于上述去除的下载信息的主要分为两个部分,则设置地址路径也分为两个部分:一个是将代码中用于获取所需的各Buildroot依赖包的地址路径设置为所述预设地址路径,使代码在编译过程中直接基于该预设地址路径获取所需的Buildroot依赖包;另一个是将各Buildroot依赖包中用于获取与其关联的Buildroot依赖包的地址路径设置为所述预设地址路径,即在Buildroot依赖包编译的过程中,对应Buildroot依赖包可通过所述预设地址路径获取对应依赖的Buildroot依赖包。Specifically, based on the above-mentioned removal of download information, which is mainly divided into two parts, setting the address path is also divided into two parts: one is to set the address path in the code for obtaining the required Buildroot dependency packages to the preset address path, so that the code can directly obtain the required Buildroot dependency packages based on the preset address path during the compilation process; the other is to set the address path in each Buildroot dependency package for obtaining the Buildroot dependency package associated therewith to the preset address path, that is, during the compilation process of the Buildroot dependency package, the corresponding Buildroot dependency package can obtain the corresponding dependent Buildroot dependency package through the preset address path.
在一优选的实施例中,每个Buildroot依赖包包括:补丁文件(patch)、编译文件(compile)以及安装文件(install);其中补丁文件用于打补丁,在打补丁过程中可能依赖其他的Buildroot依赖包;编译文件用于编译,在编译过程中可能依赖其他的Buildroot依赖包;安装文件用于安装,在安装过程中可能依赖其他的Buildroot依赖包。In a preferred embodiment, each Buildroot dependency package includes: a patch file (patch), a compile file (compile) and an installation file (install); wherein the patch file is used for patching, and may depend on other Buildroot dependency packages during the patching process; the compile file is used for compilation, and may depend on other Buildroot dependency packages during the compilation process; the installation file is used for installation, and may depend on other Buildroot dependency packages during the installation process.
将各Buildroot依赖包中用于获取关联Buildroot依赖包的地址路径设置为所述预设地址路径的方式包括:将用于获取Buildroot依赖包中的补丁文件、编译文件以及安装文件各自所需的Buildroot依赖包的地址路径分别设置为所述预设地址路径。The manner of setting the address path in each Buildroot dependency package for obtaining the associated Buildroot dependency package as the preset address path includes: setting the address paths of the Buildroot dependency packages required for obtaining the patch files, the compiled files, and the installation files in the Buildroot dependency package as the preset address paths, respectively.
由此,可以实现在Buildroot依赖包打补丁时可以从所述预设地址路径获取依赖的Buildroot依赖包,完成打补丁;在Buildroot依赖包编译时可以从所述预设地址路径获取依赖的Buildroot依赖包,完成编译工作;在安装时可以从所述预设地址路径获取依赖的Buildroot依赖包,完成安装工作。Thus, it can be achieved that when patching the Buildroot dependency package, the dependent Buildroot dependency package can be obtained from the preset address path to complete the patching; when compiling the Buildroot dependency package, the dependent Buildroot dependency package can be obtained from the preset address path to complete the compilation work; when installing, the dependent Buildroot dependency package can be obtained from the preset address path to complete the installation work.
步骤S3:按照所述预设地址路径,对参与编译的各Buildroot依赖包进行交叉编译。Step S3: cross-compile each Buildroot dependent package involved in the compilation according to the preset address path.
具体的,在编译过程中,首先根据所述预设地址路径获取参与编译的代码所需的各Buildroot依赖包,再对各Buildroot依赖包进行交叉编译,在Buildroot依赖包编译时通过所述预设地址路径获取对应依赖的Buildroot依赖包,进而完成Buildroot编译。Specifically, during the compilation process, first, the various Buildroot dependency packages required for the code involved in the compilation are obtained according to the preset address path, and then the various Buildroot dependency packages are cross-compiled. When the Buildroot dependency package is compiled, the corresponding dependent Buildroot dependency package is obtained through the preset address path, thereby completing the Buildroot compilation.
因此,本发明的Buildroot编译无需下载依赖包,可直接通过预设地址路径从对下载的Buildroot依赖包提前保存的位置获取所需的Buildroot依赖包,即使网络环境不稳定也不会导致依赖包下载不全,并且减少下载时间,提高编译效率。Therefore, the Buildroot compilation of the present invention does not need to download dependency packages, and the required Buildroot dependency packages can be directly obtained from the location where the downloaded Buildroot dependency packages are saved in advance through a preset address path. Even if the network environment is unstable, it will not cause incomplete download of the dependency packages, and it reduces the download time and improves the compilation efficiency.
为了更好的描述Buildroot编译方法,提供以下具体实施例进行说明;In order to better describe the Buildroot compilation method, the following specific examples are provided for illustration;
实施例1:一种Buildroot编译方法。Embodiment 1: A Buildroot compilation method.
如图2所示,现有的Buildroot编译方法通常会下载大量的依赖包,再进行Buildroot依赖包交叉编译,容易出现在网络不稳定的情况下导致下载依赖包中断或者无法访问的情况,并且依赖包下载不完全会编译失败。As shown in FIG2 , the existing Buildroot compilation method usually downloads a large number of dependency packages and then cross-compiles the Buildroot dependency packages. This may easily cause the download of dependency packages to be interrupted or inaccessible when the network is unstable, and compilation may fail if the dependency packages are not completely downloaded.
而本实施例的Buildroot编译方法,在编译前无需下载依赖包,如图3所示,所述方法包括:The Buildroot compilation method of this embodiment does not need to download dependent packages before compilation. As shown in FIG3 , the method includes:
步骤1:复制之前下载的依赖包。Step 1: Copy the dependency package downloaded previously.
连接网络,下载Buildroot依赖包,保存在自己的项目下。Connect to the Internet, download the Buildroot dependency package, and save it in your own project.
步骤2:依赖包的适配。Step 2: Adaptation of dependency packages.
首先,确定Buildroot依赖包版本是否正确;在版本正确的情况下去除Buildroot依赖包的下载部分;最后将获取Buildroot依赖包的地址路径设置为Buildroot依赖包的保存地址;对应Buildroot依赖包需要设置的地址路径:包括patch,compile和install中的Buildroot依赖包的地址路径。First, determine whether the version of the Buildroot dependency package is correct; if the version is correct, remove the downloaded part of the Buildroot dependency package; finally, set the address path of the Buildroot dependency package to the save address of the Buildroot dependency package; the address path that needs to be set for the corresponding Buildroot dependency package: including the address path of the Buildroot dependency package in patch, compile and install.
步骤3:依赖包之间的交叉编译。Step 3: Cross-compile between dependent packages.
按照设置的新地址路径有序的编译Buildroot依赖包。Compile the Buildroot dependency packages in order according to the set new address path.
与上述实施例原理相似的是,本发明提供一种Buildroot编译装置。Similar to the principle of the above embodiment, the present invention provides a Buildroot compilation device.
以下结合附图提供具体实施例:The following provides specific embodiments in conjunction with the accompanying drawings:
如图4展示本发明实施例中的一种Buildroot编译装置的结构示意图。FIG4 is a schematic diagram showing the structure of a Buildroot compilation device according to an embodiment of the present invention.
所述装置包括:The device comprises:
依赖包保存模块1,用于将下载的最新版本的所有Buildroot依赖包保存,并对应定义一预设地址路径;Dependency package saving module 1 is used to save all Buildroot dependency packages of the latest version downloaded, and define a preset address path accordingly;
依赖包适配模块2,连接所述依赖包保存模块1,用于对参与编译的代码所需的各Buildroot依赖包进行适配,以供将编译过程中获取Buildroot依赖包的地址路径指定为所述预设地址路径;The dependency package adaptation module 2 is connected to the dependency package storage module 1 and is used to adapt each Buildroot dependency package required by the code involved in the compilation, so as to specify the address path of the Buildroot dependency package obtained during the compilation process as the preset address path;
编译模块3,连接所述依赖包适配模块,用于按照所述预设地址路径,对参与编译的各Buildroot依赖包进行交叉编译。Compilation module 3 is connected to the dependency package adaptation module and is used to cross-compile each Buildroot dependency package involved in the compilation according to the preset address path.
需说明的是,应理解图4系统实施例中的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现;It should be noted that it should be understood that the division of the modules in the system embodiment of FIG. 4 is only a division of logical functions. In actual implementation, they can be fully or partially integrated into one physical entity, or physically separated. Moreover, these modules can be all implemented in the form of software calling through processing elements; or all implemented in the form of hardware; or some modules can be implemented in the form of software calling through processing elements, and some modules can be implemented in the form of hardware;
例如各模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(digital signal processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。For example, each module may be one or more integrated circuits configured to implement the above method, such as one or more application specific integrated circuits (ASIC), or one or more digital signal processors (DSP), or one or more field programmable gate arrays (FPGA). For another example, when a module above is implemented in the form of a processing element scheduling program code, the processing element may be a general-purpose processor, such as a central processing unit (CPU) or other processor that can call program code. For another example, these modules may be integrated together and implemented in the form of a system-on-a-chip (SOC).
由于该Buildroot编译装置的实现原理已在前述实施例中进行了叙述,因此此处不作重复赘述。Since the implementation principle of the Buildroot compilation device has been described in the above embodiments, it will not be repeated here.
在一实施例中,如图5,所述依赖包适配模块2包括:版本确定单元21,用于确定参与编译的代码所需的各Buildroot依赖包的版本是否正确;下载信息去除单元22,连接所述版本确定单元21,用于在版本正确的情况下,去除用于在编译过程中对应下载Buildroot依赖包的下载信息;地址路径设置单元23,连接所述下载信息去除单元22,用于将对应在编译过程中获取Buildroot依赖包的地址路径设置为所述预设地址路径。In one embodiment, as shown in Figure 5, the dependency package adaptation module 2 includes: a version determination unit 21, used to determine whether the version of each Buildroot dependency package required by the code involved in the compilation is correct; a download information removal unit 22, connected to the version determination unit 21, used to remove the download information used to download the corresponding Buildroot dependency package during the compilation process when the version is correct; an address path setting unit 23, connected to the download information removal unit 22, used to set the address path corresponding to obtaining the Buildroot dependency package during the compilation process to the preset address path.
在一实施例中,所述版本确定单元21用于在保存的所有Buildroot依赖包中确定参与编译的代码所需的各Buildroot依赖包;判断确定的各Buildroot依赖包的版本是否符合代码编译所要求的Buildroot依赖包版本;若符合,则为版本正确;若不符合,则版本不正确,需重新下载最新版本的Buildroot依赖包。In one embodiment, the version determination unit 21 is used to determine the Buildroot dependency packages required by the code involved in the compilation among all the saved Buildroot dependency packages; judge whether the versions of the determined Buildroot dependency packages meet the Buildroot dependency package versions required for the code compilation; if they meet, the version is correct; if not, the version is incorrect and the latest version of the Buildroot dependency package needs to be downloaded again.
在一实施例中,所述下载信息去除单元22用于去除代码中对应下载所需的各Buildroot依赖包的下载信息,并且分别去除所需的各Buildroot依赖包中对应下载关联Buildroot依赖包的下载信息。In one embodiment, the download information removing unit 22 is used to remove the download information of each Buildroot dependency package required for downloading in the code, and to remove the download information of the corresponding download associated Buildroot dependency package in each required Buildroot dependency package.
在一实施例中,所述地址路径设置单元23用于将代码中用于获取所需的各Buildroot依赖包的地址路径以及各Buildroot依赖包中用于获取关联Buildroot依赖包的地址路径设置为所述预设地址路径。In one embodiment, the address path setting unit 23 is used to set the address path in the code for obtaining each required Buildroot dependency package and the address path in each Buildroot dependency package for obtaining the associated Buildroot dependency package as the preset address path.
在一实施例中,将各Buildroot依赖包中用于获取关联Buildroot依赖包的地址路径设置为所述预设地址路径的方式包括:将用于获取Buildroot依赖包中的补丁文件、编译文件以及安装文件各自所需的Buildroot依赖包的地址路径分别设置为所述预设地址路径。In one embodiment, the method of setting the address path in each Buildroot dependency package for obtaining the associated Buildroot dependency package to the preset address path includes: setting the address paths of the Buildroot dependency packages required for obtaining the patch files, compiled files, and installation files in the Buildroot dependency package to the preset address paths, respectively.
如图6展示本发明实施例中的Buildroot编译终端的结构示意图。FIG6 is a schematic diagram showing the structure of the Buildroot compilation terminal in an embodiment of the present invention.
所述Buildroot编译终端100包括:存储器101及处理器102。所述存储器101用于存储计算机程序;所述处理器102运行计算机程序,实现如图1所述的Buildroot编译方法。The Buildroot compilation terminal 100 includes: a memory 101 and a processor 102. The memory 101 is used to store computer programs; the processor 102 runs the computer programs to implement the Buildroot compilation method as shown in FIG1 .
可选的,所述存储器101的数量均可以是一或多个,所述处理器102的数量均可以是一或多个,而图6中均以一个为例。Optionally, the number of the memories 101 may be one or more, and the number of the processors 102 may be one or more, but FIG. 6 takes one as an example.
可选的,所述Buildroot编译终端100中的处理器102会按照如图1所述的步骤,将一个或多个以应用程序的进程对应的指令加载到存储器101中,并由处理器102来运行存储在第一存储器101中的应用程序,从而实现如图1所述Buildroot编译方法中的各种功能。Optionally, the processor 102 in the Buildroot compilation terminal 100 will load one or more instructions corresponding to the application process into the memory 101 according to the steps described in Figure 1, and the processor 102 will run the application stored in the first memory 101, thereby realizing various functions in the Buildroot compilation method described in Figure 1.
可选的,所述存储器101,可能包括但不限于高速随机存取存储器、非易失性存储器。例如一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备;所述处理器102,可能包括但不限于中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital SignalProcessing,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。Optionally, the memory 101 may include but is not limited to high-speed random access memory and non-volatile memory. For example, one or more disk storage devices, flash memory devices or other non-volatile solid-state storage devices; the processor 102 may include but is not limited to a central processing unit (CPU), a network processor (NP), etc.; it may also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.
可选的,所述处理器102可以是通用处理器,包括中央处理器(CentralProcessing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,简称ASIC)、现场可编程门阵列(Field-ProgrammableGate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。Optionally, the processor 102 can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
本发明还提供计算机可读存储介质,存储有计算机程序,所述计算机程序运行时实现如图1所示的Buildroot编译方法。所述计算机可读存储介质可包括,但不限于,软盘、光盘、CD-ROM(只读光盘存储器)、磁光盘、ROM(只读存储器)、RAM(随机存取存储器)、EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)、磁卡或光卡、闪存、或适于存储机器可执行指令的其他类型的介质/机器可读介质。所述计算机可读存储介质可以是未接入计算机设备的产品,也可以是已接入计算机设备使用的部件。The present invention also provides a computer-readable storage medium storing a computer program, wherein the computer program implements the Buildroot compilation method shown in FIG1 when it is run. The computer-readable storage medium may include, but is not limited to, a floppy disk, an optical disk, a CD-ROM (Compact Disc Read Only Memory), a magneto-optical disk, a ROM (Read Only Memory), a RAM (Random Access Memory), an EPROM (Erasable Programmable Read Only Memory), an EEPROM (Electrically Erasable Programmable Read Only Memory), a magnetic card or an optical card, a flash memory, or other types of media/machine-readable media suitable for storing machine-executable instructions. The computer-readable storage medium may be a product that is not connected to a computer device, or a component that is connected to a computer device for use.
综上所述,本发明的Buildroot编译方法、装置、终端及介质,通过先将下载的最新版本的所有Buildroot依赖包保存,再对参与编译的代码所需的各Buildroot依赖包进行适配,以将编译过程中获取Buildroot依赖包的地址路径指定为所述预设地址路径,最后按照所述预设地址路径对参与编译的各Buildroot依赖包进行交叉编译。本发明不需要下载依赖包,因此不会因为网络问题导致依赖包下载不全,还大大的节省时间,保证了依赖包的完整性且编译稳定。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。In summary, the Buildroot compilation method, device, terminal and medium of the present invention, by first saving all the latest version of the downloaded Buildroot dependency packages, and then adapting each Buildroot dependency package required for the code involved in the compilation, so as to obtain the address path of the Buildroot dependency package during the compilation process as the preset address path, and finally cross-compile each Buildroot dependency package involved in the compilation according to the preset address path. The present invention does not need to download the dependency package, so it will not cause the dependency package to be incompletely downloaded due to network problems, and it also greatly saves time, ensures the integrity of the dependency package and stable compilation. Therefore, the present invention effectively overcomes the various shortcomings in the prior art and has a high industrial utilization value.
上述实施例仅示例性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,但凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。The above embodiments are merely illustrative of the principles and effects of the present invention, and are not intended to limit the present invention. Anyone familiar with the technology may modify or change the above embodiments without violating the spirit and scope of the present invention. Therefore, all equivalent modifications or changes made by a person of ordinary skill in the art without departing from the spirit and technical ideas disclosed by the present invention shall still be covered by the claims of the present invention.
Claims (6)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202311079472.6A CN117251165B (en) | 2023-08-24 | 2023-08-24 | Buildroot compilation method, device, terminal and medium |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202311079472.6A CN117251165B (en) | 2023-08-24 | 2023-08-24 | Buildroot compilation method, device, terminal and medium |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN117251165A CN117251165A (en) | 2023-12-19 |
| CN117251165B true CN117251165B (en) | 2024-06-25 |
Family
ID=89135931
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202311079472.6A Active CN117251165B (en) | 2023-08-24 | 2023-08-24 | Buildroot compilation method, device, terminal and medium |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN117251165B (en) |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110134399A (en) * | 2019-03-15 | 2019-08-16 | 北京车和家信息技术有限公司 | Compilation Method and device |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103440156B (en) * | 2013-08-15 | 2016-11-09 | 国云科技股份有限公司 | Linux software package manufacturing method capable of being used under various systems |
| CN103870310B (en) * | 2014-02-18 | 2017-07-14 | 小米科技有限责任公司 | Program compiling method and relevant apparatus |
| US10740452B2 (en) * | 2017-09-15 | 2020-08-11 | Arm Limited | Call path dependent authentication |
| CN108897542A (en) * | 2018-04-24 | 2018-11-27 | 北京奇艺世纪科技有限公司 | A kind of soft project method of adjustment, device and electronic equipment |
| CN110554876B (en) * | 2018-05-31 | 2024-07-16 | 北京京东尚科信息技术有限公司 | Method and device for compiling android engineering |
| CN110737437A (en) * | 2018-07-20 | 2020-01-31 | 北京君正集成电路股份有限公司 | compiling method and device based on code integration |
| CN109491661B (en) * | 2018-10-24 | 2022-06-24 | 武汉思普崚技术有限公司 | Universal cross-compiling method and device |
| CN109766099B (en) * | 2018-12-11 | 2020-07-31 | 浙江口碑网络技术有限公司 | Front-end source code compiling method and device, storage medium and computer equipment |
| CN114138281B (en) * | 2021-12-08 | 2025-01-14 | 京东科技控股股份有限公司 | Compilation methods, devices, equipment and media for software engineering |
| CN114745439A (en) * | 2022-03-07 | 2022-07-12 | 新华三大数据技术有限公司 | Method and device for updating dependent file cache, computer equipment and storage medium |
| CN115145595A (en) * | 2022-05-06 | 2022-10-04 | 北京沃东天骏信息技术有限公司 | Installation method, device, server, electronic device and storage medium of dependency library |
| CN115202669A (en) * | 2022-08-04 | 2022-10-18 | 深圳市远行科技股份有限公司 | Project construction method and system based on configuration file and related equipment |
| CN115328526A (en) * | 2022-08-19 | 2022-11-11 | 北京思明启创科技有限公司 | Dependency package updating method, device, equipment and storage medium |
| CN115509560B (en) * | 2022-09-30 | 2025-05-27 | 上海洛轲智能科技有限公司 | Engineering code packaging method, device and electronic equipment |
-
2023
- 2023-08-24 CN CN202311079472.6A patent/CN117251165B/en active Active
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110134399A (en) * | 2019-03-15 | 2019-08-16 | 北京车和家信息技术有限公司 | Compilation Method and device |
Also Published As
| Publication number | Publication date |
|---|---|
| CN117251165A (en) | 2023-12-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN109271198A (en) | Mirror image packaging method, device and electronic equipment based on Docker container | |
| CN102402427A (en) | Method and device for updating Java application program | |
| CN108319460A (en) | Method and device for generating application program installation package, electronic equipment and storage medium | |
| CN101271402A (en) | A method and system for calling a function | |
| CN114911471A (en) | A software engineering construction method, system and storage medium | |
| CN111414189A (en) | A method and device for determining version compatibility | |
| KR100834676B1 (en) | How to build a software project | |
| CN112860312A (en) | Method and device for detecting item dependency relationship change | |
| CN118672644A (en) | Dynamic library compatibility method and device under domestic operating system environment | |
| CN110806891A (en) | Method and device for generating software version of embedded equipment | |
| CN114138376B (en) | A method, computing device and storage medium for loading plug-in in application | |
| CN117251165B (en) | Buildroot compilation method, device, terminal and medium | |
| CN112748905A (en) | Method and device for initializing and calling basic library, electronic equipment and storage medium | |
| CN113934427A (en) | Method and system for jointly deploying front end and back end of software development based on maven plug-in | |
| CN114756246A (en) | A deployment method, device, device and storage medium for a development environment | |
| CN108958795B (en) | BootLoader code reuse method and development board in embedded system | |
| CN117573417A (en) | A KABI repair method based on ectopic field replacement | |
| CN116414400A (en) | Method for compiling multi-CPU architecture software and function library | |
| CN116775087A (en) | Thermal repair method, device, electronic equipment and storage medium | |
| WO2019024392A1 (en) | Dependency package tool verification method, storage medium, electronic device and system | |
| CN117251166B (en) | Compiling method, device, terminal and medium for shortening op-build compiling time | |
| CN106886420B (en) | Program code management device and method and program code manager | |
| CN111651194A (en) | iOS-based adaptation method and device | |
| CN117827277B (en) | Multi-kernel adapting device and method of operating system and industrial Internet of things operating system | |
| US20240303053A1 (en) | Method And System for Compiling Applications |
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 | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant | ||
| PP01 | Preservation of patent right | ||
| PP01 | Preservation of patent right |
Effective date of registration: 20250725 Granted publication date: 20240625 |