CN109491661B - Universal cross-compiling method and device - Google Patents

Universal cross-compiling method and device Download PDF

Info

Publication number
CN109491661B
CN109491661B CN201811243584.XA CN201811243584A CN109491661B CN 109491661 B CN109491661 B CN 109491661B CN 201811243584 A CN201811243584 A CN 201811243584A CN 109491661 B CN109491661 B CN 109491661B
Authority
CN
China
Prior art keywords
compiled
package
dependency
compiling
installation package
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
Application number
CN201811243584.XA
Other languages
Chinese (zh)
Other versions
CN109491661A (en
Inventor
刘仙凤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Sipuling Technology Co Ltd
Original Assignee
Wuhan Sipuling Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan Sipuling Technology Co Ltd filed Critical Wuhan Sipuling Technology Co Ltd
Priority to CN201811243584.XA priority Critical patent/CN109491661B/en
Publication of CN109491661A publication Critical patent/CN109491661A/en
Application granted granted Critical
Publication of CN109491661B publication Critical patent/CN109491661B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation

Abstract

The embodiment of the invention provides a universal cross compiling method and device. Wherein the method comprises the following steps: acquiring a dependency package from an installation package to be compiled, and sequencing the dependency relationship among the dependency packages in the installation package to be compiled to obtain a sequenced installation package to be compiled; combining the sequenced installation packages to be compiled with a cross compiling tool chain to obtain a universal cross compiling framework; the universal cross-compiling framework is used for compiling program codes, and the dependency package comprises software to be compiled. According to the universal cross compiling method and the universal cross compiling device, an automatic determination mechanism of the dependency package dependency relationship is introduced in the process of establishing the cross compiling framework, so that cross compiling operation is facilitated, and the execution efficiency of cross compiling is improved.

Description

Universal cross-compiling method and device
Technical Field
The embodiment of the invention relates to the technical field of computers, in particular to a universal cross compiling method and device.
Background
Related software is often cross-compiled in order to adapt to different hardware platforms. For example, a common development and compilation environment is typically the x86 platform, when development code needs to run across platforms, and the target platform cannot meet the compilation requirements. Cross-compilation is required to compile the code into an executable that can be run on the target platform. Generally, cross-compiling requires building a compiling environment of a target platform on a current platform, and then compiling a code, where the code generally has corresponding dependent libraries, such as a database of c and various packages of python, and compiling of the code can be completed only by solving the compiling of the dependent libraries. Meanwhile, the dependency library of the code also has a self-dependent relationship, and the complex dependency relationship is just the complex dependency relationship, so that cross compiling is slightly complicated and difficult.
In the prior art, most of the methods are only used for researching the building of the compiling environment or optimizing and analyzing the performance of the compiling method, and an automatic solution for the complex dependency relationship is not provided. For other languages or applications that rely on fewer packages, cross-compilation using, for example, the more python libraries currently is not universal, and the entire framework is cumbersome and time consuming to build and use. Therefore, it is an urgent technical problem in the art to find a method capable of automatically determining dependency relationship of a dependency package, and the method can facilitate cross-compilation operation and improve execution efficiency of cross-compilation.
Disclosure of Invention
In view of the foregoing problems in the prior art, embodiments of the present invention provide a universal cross-compiling method and apparatus.
In a first aspect, an embodiment of the present invention provides a universal cross-compiling method, including: acquiring a dependency package from an installation package to be compiled, and sequencing the dependency relationship among the dependency packages in the installation package to be compiled to obtain a sequenced installation package to be compiled; combining the sequenced installation packages to be compiled with a cross compiling tool chain to obtain a universal cross compiling framework; the universal cross compiling framework is used for compiling program codes, and the dependency packages comprise software to be compiled.
Further, the cross-compilation toolchain comprises: a cross compilation toolchain that has been compiled to completion or a cross compilation toolchain that is compiled to completion in real time.
Further, the obtaining the dependency package from the installation package to be compiled includes: and if the dependent package is not in the requirement list storing the names of the installation packages to be compiled, adding the dependent package to the tail of the requirement list storing the names of the installation packages to be compiled, and downloading the dependent package.
Further, the obtaining the dependency package from the installation package to be compiled includes: and acquiring the dependent package from the prepared installation package to be compiled.
Further, the sorting the dependency relationships among the dependency packages in the installation package to be compiled to obtain the sorted installation package to be compiled includes: generating a requirement _ old _ list according to the to-be-compiled installation package name stored in a requirement list storing the to-be-compiled installation package name, searching a dependency relationship file from the requirement _ old _ list, and acquiring the dependency relationship of the dependency package; the requirement _ old _ list is used for storing the installation package to be compiled, wherein the dependency relationship of the dependency package needs to be searched.
Further, after the obtaining the universal cross-compiling framework, the method further includes: transmitting parameters required by cross compiling to the universal cross compiling framework through a script, and performing cross compiling on a program code by adopting the universal cross compiling framework.
Further, after the cross-compiling the program code by using the universal cross-compiling framework, the method further includes: deleting the decompressed installation package to be compiled, and compressing and packaging the installation package after the compilation is finished.
In a second aspect, an embodiment of the present invention provides a universal cross-compiling apparatus, including:
the dependency relationship obtaining module is used for obtaining the dependency packages from the installation packages to be compiled, and sequencing the dependency relationships among the dependency packages in the installation packages to be compiled to obtain the sequenced installation packages to be compiled;
a universal cross compiling frame obtaining module, configured to combine the ordered to-be-compiled installation packages with a cross compiling tool chain to obtain a universal cross compiling frame;
the universal cross compiling framework is used for compiling program codes, and the dependency packages comprise software to be compiled.
In a third aspect, an embodiment of the present invention provides an electronic device, including:
at least one processor; and
at least one memory communicatively coupled to the processor, wherein:
the memory stores program instructions executable by the processor, the processor calling the program instructions to perform the universal cross-compilation method provided by any of the various possible implementations of the first aspect.
In a fourth aspect, embodiments of the present invention provide a non-transitory computer-readable storage medium storing computer instructions for causing a computer to perform a universal cross-compilation method as provided by any of a variety of possible implementations of the first aspect.
According to the universal cross compiling method and the universal cross compiling device, an automatic determination mechanism of the dependency package dependency relationship is introduced in the process of establishing the cross compiling framework, so that cross compiling operation is facilitated, and the execution efficiency of cross compiling is improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, a brief description will be given below to the drawings required for the description of the embodiments or the prior art, and it is obvious that the drawings in the following description are some embodiments of the present invention, and for those skilled in the art, other drawings can be obtained according to these drawings without creative efforts.
FIG. 1 is a flowchart of a universal cross-compilation method provided by an embodiment of the present invention;
FIG. 2 is a schematic structural diagram of a universal cross-compiling apparatus according to an embodiment of the invention;
fig. 3 is a schematic physical structure diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, but not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention. In addition, technical features in various embodiments or single embodiments provided by the invention can be arbitrarily combined with each other to form a feasible technical solution, but must be based on realization of the technical solution by a person skilled in the art, and when the technical solution combination is contradictory or cannot be realized, the technical solution combination is not considered to exist and is not in the protection scope claimed by the invention.
An embodiment of the present invention provides a universal cross-compiling method, and referring to fig. 1, the method includes:
101. acquiring a dependency package from an installation package to be compiled, and sequencing the dependency relationship among the dependency packages in the installation package to be compiled to obtain a sequenced installation package to be compiled;
102. and combining the sequenced installation packages to be compiled with a cross compiling tool chain to obtain a universal cross compiling framework.
The universal cross compiling framework is used for compiling program codes, and the dependency packages comprise software to be compiled.
According to the universal cross compiling method provided by the embodiment of the invention, an automatic determination mechanism of the dependency package dependency relationship is introduced in the process of establishing the cross compiling framework, so that the cross compiling operation is facilitated, and the execution efficiency of the cross compiling is improved.
On the basis of the above embodiments, the universal cross-compiling method provided in the embodiments of the present invention includes: a cross compilation toolchain that has been compiled to completion or a cross compilation toolchain that is compiled to completion in real time.
On the basis of the foregoing embodiment, the universal cross-compiling method provided in the embodiment of the present invention, where acquiring the dependency package from the installation package to be compiled, includes: and if the dependent package is not in the requirement list storing the names of the installation packages to be compiled, adding the dependent package to the tail of the requirement list storing the names of the installation packages to be compiled, and downloading the dependent package.
On the basis of the foregoing embodiment, the universal cross-compiling method provided in the embodiment of the present invention, where acquiring the dependency package from the installation package to be compiled, includes: and acquiring the dependent package from the prepared installation package to be compiled.
On the basis of the foregoing embodiment, the universal cross compiling method provided in the embodiment of the present invention is configured to sort the dependency relationships between the dependent packages in the to-be-compiled installation packages to obtain the sorted to-be-compiled installation packages, and includes: generating a requirement _ old _ list according to the to-be-compiled installation package name stored in a requirement list storing the to-be-compiled installation package name, searching a dependency relationship file from the requirement _ old _ list, and acquiring the dependency relationship of the dependency package; the requirement _ old _ list is used for storing the installation package to be compiled, wherein the dependency relationship of the dependency package needs to be searched.
On the basis of the foregoing embodiment, the universal cross-compiling method provided in the embodiment of the present invention, after obtaining the universal cross-compiling framework, further includes: transmitting parameters required by cross compiling to the universal cross compiling framework through a script, and performing cross compiling on a program code by adopting the universal cross compiling framework.
On the basis of the foregoing embodiment, the universal cross-compiling method provided in the embodiment of the present invention further includes, after the cross-compiling of the program code by using the universal cross-compiling framework, the following steps: deleting the decompressed installation package to be compiled, and compressing and packaging the installation package after the compilation is finished.
In order to more clearly illustrate the spirit of the various embodiments of the present invention, it is necessary to describe the establishment process of the universal cross-compilation framework in the embodiments of the present invention in an integrated manner. It should be noted that the overall description is only for showing the spirit of the present invention, and not for limiting the technical solution of the present invention. All technical solutions that are within the spirit of the present invention are within the scope of the present patent. The universal cross-compiling framework mentioned in the embodiment of the invention is mainly divided into the following four modules: compiling environment preparation, dependency relation processing, compiling execution and compiling result processing.
1. Compile environment preparation module
The cross compiling is to compile a program capable of running on the target platform on the host platform by means of a tool chain, and the architecture of the target platform is different from that of the host platform, so that a module is independently provided in the invention for preparing relevant environment parameters and tools, such as compiling tool chain, some relevant parameters of the target platform, paths and the like. The following description is made mainly for the configuration of cross-tool chains and compiling parameters.
1) Cross tool chain:
when compiling, operations such as compiling and linking the code are required, and the operations respectively need to depend on corresponding tools, such as a gcc compiling tool, an ld linking tool and the like. And the tools are often not only one but also have logic sequences used by themselves, and the tools are called cross tool chains when being chained together. The cross tool chain used by the invention is compiled aiming at the target platform, so the cross tool chain can be directly used, and usually, the cross tool chain can also be compiled by a platform manufacturer or by a manufacturing tool.
2) Compiling parameter configuration:
these tools are usually placed under the same path, and a cross compiler, a library function selected by the compiler, a target platform system parameter, and the like need to be specified by a compilation parameter at the time of compilation.
For example, what generally needs to be configured are:
BUILD: the compilation platform, for example, in the present invention is x86_ 64-linux-gnu.
TARGET/HOST: here, it is set to be cross-compiler (prefix). For example, mips64-octeon-linux-gnu in the present invention.
prefix: installation path after current code compilation.
There is also a target platform compiler and specification of dependency libraries, such as CC $ { HOST } -gcc, PP $ { HOST } -cpp, CXX $ { HOST } -c + +, etc.
And compiling parameter configuration is specified in the shell script, and the script is run to set parameters during compiling.
2. Dependency processing module
The more difficult thing in the cross compiling process is the dependency relationship among the software to be compiled, for example, a depends on B, the compiling of B must be completed before the compiling of a, while B may depend on the compiling of C library in the compiling process, and the version numbers of the applications with different versions depend on are different. Therefore, the invention focuses on processing the dependency relationship to form a module.
The cross-compiling tool chain prepared in the part 1 compiling environment preparation module is only the most basic dependent tool, and the actual code also depends on more application programs, such as a database, interprocess message middleware and the like, for example, the tool of the pyzmq-16.0.2 version in python depends on the library of which the cython > is 0.20 and the sphinx > is 1.3. Therefore, before compiling our code, it is necessary to put the dependency order of each application program in order to compile in the dependency order in the following compiling execution module.
In order to maintain the stability of the application program and the compiling environment, the invention does not recommend downloading the latest installation package in real time in the compiling process, and preferably prepares the installation package in advance. However, if real-time downloading is required, the following operations may be performed first.
In the method adopted by the invention, python is taken as an example, and a standard requirement. Of course, installation packages in other languages may be recorded using this file.
a. Traversing each installation package name in the requisition.txt file, and caching the installation package name into a requisition list.
b. Decompressing and entering the decompressed file directory, and reading the dependent packet. For example, after the python installation package is decompressed, a requires file is stored, and the dependency relationship is stored.
c. Updating a requisition list
If the dependent package exists in the requirement list, the dependent package is not processed, and the operation of the next installation package is continued; otherwise, the dependent package is added to the end of the current position of the requirement list, and the dependent package is downloaded.
2) Sorting installation package dependencies to be compiled
In the step 1), the dependent package of the program to be compiled is downloaded. If in the actual process, all the dependent packages are known in advance, for example, for python, a pip tool can be used in a local environment to install the dependence in the requirement. Thus, step 1) can be skipped and the operation of step 2) can be directly performed.
After all dependent packages are sorted out, the dependency relationships need to be sorted.
a) Traversing the installation package in the request.
b) And decompressing the installation package, entering the decompressed directory, searching the dependency relationship file, and reading the dependency.
c) Applying for a new empty list requirement _ new _ list, and updating the dependency and installation package name in the step b) into the empty list. It should be noted that if the dependency package to be added is already in the new list, no addition is needed.
Note that in this step, there are dependent package names that may have an inclusion-to-included relationship. Therefore, when judging whether the dependent packet to be added already exists in the new list, regular expression matching needs to be applied according to the name of the dependent packet. For example, the name rule of the python dependent package in the present invention is abcdef-1.1, and the regular expression may be defined as name + '-' + '[0-9 ]'. Regular matching expressions for other naming-rule dependent packets can be made with reference to the expression.
3. Compiling execution module
After the compiling environment is prepared, the process of compiling each dependent package is simple, for example, c library compiling is generally:
configure- -xxx- -the parameters compiled here can be passed in through the script of the big frame.
make
make install
For the compilation of a python dependent library, generally:
python setup — xxx the parameters compiled here can be passed in through the script of the big framework, for example, the installation path after compiling, the tool chain parameters needed to be used during compiling, and the like are specified.
The module for executing the compilation in the invention is mainly completed by using a shell script.
4. Compiling result processing module
After one-time compiling is completed, debugging and optimization may be needed according to actual conditions, so that the compiling environment needs to be cleaned, and subsequent compiling is facilitated. The main cleaning worker is used for deleting the decompressed installation package. And packaging the compiled executable program of the installation package. The device is convenient to be directly installed and operated on a target platform.
The implementation basis of the various embodiments of the present invention is realized by programmed processing performed by a device having a processor function. Therefore, in engineering practice, the technical solutions and functions thereof of the embodiments of the present invention can be packaged into various modules. Based on this reality, on the basis of the foregoing embodiments, embodiments of the present invention provide a universal cross-compiling apparatus for executing the universal cross-compiling method in the foregoing method embodiments. Referring to fig. 2, the apparatus includes:
the dependency relationship obtaining module 201 is configured to obtain a dependency package from an installation package to be compiled, and sort the dependency relationships between the dependency packages in the installation package to be compiled to obtain a sorted installation package to be compiled;
a universal cross compiling framework obtaining module 202, configured to combine the ordered to-be-compiled installation packages with a cross compiling tool chain to obtain a universal cross compiling framework;
the universal cross-compiling framework is used for compiling program codes, and the dependency package comprises software to be compiled.
The universal cross compiling device provided by the embodiment of the invention adopts the dependency relationship acquisition module and the universal cross compiling frame acquisition module, and introduces an automatic determination mechanism of dependency package dependency relationship in the process of establishing the cross compiling frame, thereby facilitating the operation of cross compiling and improving the execution efficiency of cross compiling.
The method of the embodiment of the invention is realized by depending on the electronic equipment, so that the related electronic equipment is necessarily introduced. To this end, an embodiment of the present invention provides an electronic apparatus, as shown in fig. 3, including: at least one processor (processor)301, a communication Interface (Communications Interface)304, at least one memory (memory)302 and a communication bus 303, wherein the at least one processor 301, the communication Interface 304 and the at least one memory 302 are configured to communicate with each other via the communication bus 303. The at least one processor 301 may call logic instructions in the at least one memory 302 to perform the following method: acquiring a dependency package from an installation package to be compiled, and sequencing the dependency relationship among the dependency packages in the installation package to be compiled to obtain a sequenced installation package to be compiled; combining the sequenced installation packages to be compiled with a cross compiling tool chain to obtain a universal cross compiling framework; the universal cross compiling framework is used for compiling program codes, and the dependency packages comprise software to be compiled.
Furthermore, the logic instructions in the at least one memory 302 may be implemented in the form of software functional units and stored in a computer readable storage medium when sold or used as a stand-alone product. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present invention. Examples include: acquiring a dependency package from an installation package to be compiled, and sequencing the dependency relationship among the dependency packages in the installation package to be compiled to obtain a sequenced installation package to be compiled; combining the sequenced installation packages to be compiled with a cross compiling tool chain to obtain a universal cross compiling frame; the universal cross compiling framework is used for compiling program codes, and the dependency packages comprise software to be compiled. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.
The above-described embodiments of the apparatus are merely illustrative, and the units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment. One of ordinary skill in the art can understand and implement it without inventive effort.
Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware. With this understanding in mind, the above-described technical solutions may be embodied in the form of a software product, which can be stored in a computer-readable storage medium such as ROM/RAM, magnetic disk, optical disk, etc., and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the methods described in the embodiments or some parts of the embodiments.
Finally, it should be noted that: the above examples are only intended to illustrate the technical solution of the present invention, but not to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions of the embodiments of the present invention.

Claims (8)

1. A universal cross-compilation method, comprising:
acquiring a dependency package from an installation package to be compiled, and sequencing the dependency relationship among the dependency packages in the installation package to be compiled to obtain a sequenced installation package to be compiled;
combining the sequenced installation packages to be compiled with a cross compiling tool chain to obtain a universal cross compiling framework;
the universal cross compiling framework is used for compiling a program code, and the dependency package comprises software to be compiled;
wherein, the obtaining of the dependency package from the installation package to be compiled includes:
acquiring the name of the installation package to be compiled, storing the name of the installation package to be compiled into a requirement list, acquiring a dependent package from the requirement list in which the name of the installation package to be compiled is stored, and if the dependent package is not in the requirement list in which the name of the installation package to be compiled is stored, adding the dependent package to the tail of the requirement list in which the name of the installation package to be compiled is stored, and downloading the dependent package;
the step of sequencing the dependency relationship among the dependency packages in the installation package to be compiled to obtain a sequenced installation package to be compiled includes:
generating a requirement _ old _ list according to the to-be-compiled installation package name stored in a requirement list storing the to-be-compiled installation package name, searching a dependency relationship file from the requirement _ old _ list, and acquiring the dependency relationship of the dependency package;
and applying for a new empty list requirement _ new _ list, and storing the dependency relationship of the dependency package and the installation package to be compiled.
2. The universal cross-compilation method of claim 1 wherein the cross-compilation toolchain comprises:
a cross compilation toolchain that has been compiled to completion or a cross compilation toolchain that is compiled to completion in real time.
3. The universal cross-compilation method as recited in claim 1, wherein the obtaining of the dependency package from the installation package to be compiled comprises:
and acquiring the dependency package from the prepared installation package to be compiled.
4. The universal cross-compilation method of claim 1, further comprising, after the obtaining the universal cross-compilation framework:
transmitting parameters required by cross compiling to the universal cross compiling framework through a script, and performing cross compiling on a program code by adopting the universal cross compiling framework.
5. The universal cross-compiling method of claim 4 further comprising, after the cross-compiling program code using the universal cross-compiling framework, the following:
deleting the decompressed installation package to be compiled, and compressing and packaging the installation package after the compilation is finished.
6. A universal cross-coding apparatus, comprising:
the dependency relationship obtaining module is used for obtaining the dependency packages from the installation packages to be compiled, and sequencing the dependency relationships among the dependency packages in the installation packages to be compiled to obtain the sequenced installation packages to be compiled;
the universal cross compiling framework obtaining module is used for combining the sequenced installation packages to be compiled with the cross compiling tool chain to obtain a universal cross compiling framework;
the universal cross compiling framework is used for compiling a program code, and the dependency package comprises software to be compiled;
wherein, the obtaining of the dependency package from the installation package to be compiled includes:
acquiring the name of the installation package to be compiled, storing the name of the installation package to be compiled into a requirement list, acquiring a dependent package from the requirement list in which the name of the installation package to be compiled is stored, and if the dependent package is not in the requirement list in which the name of the installation package to be compiled is stored, adding the dependent package to the tail of the requirement list in which the name of the installation package to be compiled is stored, and downloading the dependent package;
the step of sequencing the dependency relationship among the dependency packages in the installation package to be compiled to obtain a sequenced installation package to be compiled includes:
generating a requirement _ old _ list according to the to-be-compiled installation package name stored in a requirement list storing the to-be-compiled installation package name, searching a dependency relationship file from the requirement _ old _ list, and acquiring the dependency relationship of the dependency package;
and applying for a new empty list request _ new _ list, and storing the dependency relationship of the dependency package and the installation package to be compiled.
7. An electronic device, comprising:
at least one processor, at least one memory, a communication interface, and a bus; wherein, the first and the second end of the pipe are connected with each other,
the processor, the memory and the communication interface complete mutual communication through the bus;
the memory stores program instructions executable by the processor, the processor calling the program instructions to perform the method of any of claims 1 to 5.
8. A non-transitory computer-readable storage medium storing computer instructions that cause a computer to perform the method of any one of claims 1-5.
CN201811243584.XA 2018-10-24 2018-10-24 Universal cross-compiling method and device Active CN109491661B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811243584.XA CN109491661B (en) 2018-10-24 2018-10-24 Universal cross-compiling method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811243584.XA CN109491661B (en) 2018-10-24 2018-10-24 Universal cross-compiling method and device

Publications (2)

Publication Number Publication Date
CN109491661A CN109491661A (en) 2019-03-19
CN109491661B true CN109491661B (en) 2022-06-24

Family

ID=65693118

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811243584.XA Active CN109491661B (en) 2018-10-24 2018-10-24 Universal cross-compiling method and device

Country Status (1)

Country Link
CN (1) CN109491661B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110955415B (en) * 2019-12-03 2024-03-08 杭州当贝网络科技有限公司 Method for projecting multi-platform service adaptation
CN111538495B (en) * 2020-07-13 2020-10-23 深圳开源互联网安全技术有限公司 Method, system and equipment for identifying Python open source component quoted in project
CN112181422A (en) * 2020-09-02 2021-01-05 苏州浪潮智能科技有限公司 Hadoop compiling method and device and computer readable storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101697135A (en) * 2009-10-28 2010-04-21 北京东方网力科技有限公司 Method and device for compiling program
CN101727347A (en) * 2008-08-15 2010-06-09 北京北大众志微系统科技有限责任公司 Method and system for finishing software construction
CN101859244A (en) * 2009-04-10 2010-10-13 中兴通讯股份有限公司 Multi-toolchain engineering construction method and system
CN104077140A (en) * 2014-07-04 2014-10-01 用友软件股份有限公司 Automatic compiling method and compiling device for continuous integration
CN107729017A (en) * 2017-10-12 2018-02-23 北京元心科技有限公司 Compilation Method, device and equipment
US10102015B1 (en) * 2017-06-22 2018-10-16 Microsoft Technology Licensing, Llc Just in time GPU executed program cross compilation

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105718296B (en) * 2016-04-21 2019-11-08 北京元心科技有限公司 Generation display method and device for compiling dependency tree
CN107153540A (en) * 2017-04-19 2017-09-12 畅捷通信息技术股份有限公司 Incremental build method and device
CN107943485B (en) * 2017-12-11 2021-07-20 北京奇虎科技有限公司 Patch compiling platform and patch compiling method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101727347A (en) * 2008-08-15 2010-06-09 北京北大众志微系统科技有限责任公司 Method and system for finishing software construction
CN101859244A (en) * 2009-04-10 2010-10-13 中兴通讯股份有限公司 Multi-toolchain engineering construction method and system
CN101697135A (en) * 2009-10-28 2010-04-21 北京东方网力科技有限公司 Method and device for compiling program
CN104077140A (en) * 2014-07-04 2014-10-01 用友软件股份有限公司 Automatic compiling method and compiling device for continuous integration
US10102015B1 (en) * 2017-06-22 2018-10-16 Microsoft Technology Licensing, Llc Just in time GPU executed program cross compilation
CN107729017A (en) * 2017-10-12 2018-02-23 北京元心科技有限公司 Compilation Method, device and equipment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
用Python实现基于依赖关系的排序;linux先生;《博客园:https://www.cnblogs.com/linux-sir/archive/2012/06/02/2531474.html》;20120602;第1-3页 *

Also Published As

Publication number Publication date
CN109491661A (en) 2019-03-19

Similar Documents

Publication Publication Date Title
CN109491661B (en) Universal cross-compiling method and device
CN106547527B (en) JavaScript file construction method and device
CN106155724B (en) Upgrading method and device
CN110083360B (en) Compiling method, device, equipment and storage medium of application program code
CN106469049B (en) File scanning method and device
CN111045944A (en) Regression testing method, device and system and computer readable storage medium
CN110543427B (en) Test case storage method and device, electronic equipment and storage medium
CN106776266B (en) Configuration method of test tool and terminal equipment
CN110990001A (en) IVR (Interactive Voice response) process execution method and device
CN111124480A (en) Application package generation method and device, electronic equipment and storage medium
CN112953983A (en) SFTP transmission method and device
CN107729001B (en) Expression processing method and device
CN115202669A (en) Project construction method and system based on configuration file and related equipment
CN113568604B (en) Method and device for updating wind control strategy and computer readable storage medium
CN112965720A (en) Component compiling method, device, equipment and computer readable storage medium
CN113821486B (en) Method and device for determining dependency relationship between pod libraries and electronic equipment
CN106951236B (en) Plug-in development method and device
CN106802860B (en) Useless class detection method and device
CN111580821B (en) Script binding method and device, electronic equipment and computer readable storage medium
CN113703734A (en) Applet generation method and device, electronic equipment and storage medium
CN113849181A (en) Cross compiling tool chain construction method and device, electronic equipment and storage medium
CN112416383A (en) Hot updating method and device for golang program and computer equipment
CN113608996B (en) Mirror image compiling test method, system, device and readable storage medium
CN114661299A (en) Component statistical method, tool, device, equipment and medium
CN115756490A (en) Method, device, equipment, storage medium and product for improving android compiling efficiency

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