CN103870310A - Program compilation method and relevant device - Google Patents

Program compilation method and relevant device Download PDF

Info

Publication number
CN103870310A
CN103870310A CN201410055020.9A CN201410055020A CN103870310A CN 103870310 A CN103870310 A CN 103870310A CN 201410055020 A CN201410055020 A CN 201410055020A CN 103870310 A CN103870310 A CN 103870310A
Authority
CN
China
Prior art keywords
file
compiling
compiled
directory tree
dependent file
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.)
Granted
Application number
CN201410055020.9A
Other languages
Chinese (zh)
Other versions
CN103870310B (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.)
Beijing Xiaomi Technology Co Ltd
Xiaomi Inc
Original Assignee
Xiaomi Inc
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 Xiaomi Inc filed Critical Xiaomi Inc
Priority to CN201410055020.9A priority Critical patent/CN103870310B/en
Publication of CN103870310A publication Critical patent/CN103870310A/en
Application granted granted Critical
Publication of CN103870310B publication Critical patent/CN103870310B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

The invention relates to a program compilation method and a relevant device. The method comprises the steps of querying a dependent file depended by a selected file to be compiled from a first directory tree stored on a compilation host; then obtaining the dependent file from a second directory tree stored on a compilation server; using the dependent file for compiling the file to be compiled to obtain an object file. The effect of depending on the other directory tree (the second directory tree) in addition to the directory tree of the file to be compiled during compilation of Android source codes is realized, a set of complete Android source codes is not required to be downloaded and maintained by research and development personnel, source codes corresponding to a module are only required to be downloaded and the occupied space of a hard disk is reduced. Moreover, the dependent file required by the object file can be directly obtained from the second directory tree, the dependent file can be obtained without performing compilation and the time and resources for compiling the dependent file are saved. Accordingly, the required hard disk space and the compilation time are greatly reduced and the system development efficiency is improved.

Description

Program compiling method and relevant apparatus
Technical field
The disclosure relates to field of computer technology, particularly relates to program compiling method and relevant apparatus.
Background technology
Program compilation is to convert high-level programming language to machine language that computer hardware can be identified, so that computing machine is processed.
Android system is half open source operating system taking Linux as basis, (be for example mainly used in mobile terminal, smart mobile phone, panel computer etc.), mobile terminal manufacturer can be according to the one's own Android system of the hardware customization of individual character of oneself, now, need system research and development personnel that the source code of system is developed and compiled.
While compiling the source code of Android, large-scale development project can be decomposed into multiple module or sub-projects that are easier to management, and possibility Existence dependency relationship between module or sub-project, the file relying in the time of a certain file destination of compiling has uncertainty, therefore, system research and development personnel need to be at a set of complete Android source code of local maintenance, and source code is very huge, also need several hours ability to download at good net environment, and, along with the continuous renewal of Android version, in order to increase the compatibility of software, conventionally need to preserve in this locality the source code of multiple Android versions, take hard disk and Internet resources are many, compiling Android source code needs the hard drive space of 30G left and right, takies a large amount of hard drive spaces, and compilation time conventionally needs several hours, waste system research and development personnel's plenty of time.
Summary of the invention
A kind of program compiling method and relevant apparatus are provided in disclosure embodiment, and to solve Android compilation of source code, to take resource many, and the long problem that expends time in.
In order to solve the problems of the technologies described above, disclosure embodiment discloses following technical scheme:
According to the first aspect of disclosure embodiment, a kind of program compiling method is provided, comprising: the dependent file that query compiler file to be compiled relies on from the first directory tree; The second directory tree obtaining from compiler server compiling Android source code, obtain described dependent file; According to the described file to be compiled of described dependent file compiling, obtain file destination.
In conjunction with first aspect, in the possible implementation of the first of first aspect, the second directory tree obtaining from compiler server compiling Android source code, obtain described dependent file, in the following way:
From described the second directory tree, obtain the routing information of described dependent file in described compiler server; Obtain described dependent file according to described routing information.
In conjunction with the possible implementation of the first of first aspect, in the possible implementation of the second of first aspect, from described the second directory tree, obtain the routing information of described dependent file in described compiler server, in the following way:
Receive each dependent file in described the second directory tree that described compiler server sends and the mapping relations between routing information; According to described mapping relations, inquiry obtains routing information corresponding to dependent file that described file to be compiled relies on.
In conjunction with first aspect, in the third possible implementation of first aspect, the second directory tree obtaining from compiler server compiling Android source code, obtain described dependent file, in the following way:
The fileinfo of the dependent file relying on to the described file to be compiled of described compiler server transmission, described fileinfo at least comprises the file name of described dependent file; Receive the described dependent file that described compiler server obtains according to the fileinfo of described dependent file; Inquire about the mapping relations between each dependent file and the routing information in described the second directory tree by compiler server, the routing information of the described dependent file obtaining, and obtain described dependent file according to described routing information; Described mapping relations are kept in described compiler server.
In conjunction with first aspect, in the 4th kind of possible implementation of first aspect, the described dependent file that query compiler file to be compiled relies on from the first directory tree, in the following way:
Obtain the dependence of each file to be compiled in described the first directory tree, described dependence is for storing the corresponding relation between each file to be compiled and dependent file that described in each, file to be compiled relies on;
According to described dependence, inquiry obtains the dependent file that described file to be compiled relies on.
In conjunction with first aspect, in the 5th kind of possible implementation of first aspect, described method also comprises:
In described the first directory tree, search the dependent file that whether exists described file to be compiled to rely on;
When in described the first directory tree, do not exist described file to be compiled to rely on dependent file time, carry out described the second directory tree obtaining from compiler server compiling Android source code, obtain the step of described dependence.
According to the second aspect of disclosure embodiment, a kind of program compiling method is provided, comprising:
Obtain Android source code; Compile described Android source code and obtain the second directory tree, and preserve each dependent file in described the second directory tree and the mapping relations of routing information; Described mapping relations obtain for making to compile main frame the dependent file that file to be compiled relies on, and the file to be compiled compiling in the first directory tree according to described dependent file obtains file destination.
In conjunction with second aspect, in the possible implementation of the first of second aspect, described method also comprises:
Whether detect the Android source code of storing in compiling main frame is modified;
In the time detecting that the described Android source code of storing in compiling main frame is modified, according to amended Android source code, upgrade the Android source code of storing in compiler server;
Android source code after compiling is upgraded, upgrades each dependent file in described the second directory tree.
In conjunction with the possible implementation of the first of second aspect, in the possible implementation of the second of second aspect, obtain compiling main frame and compile source code corresponding to each file destination obtaining, in the following way:
Compiler server obtains the Android source code that each file destination is corresponding from central server, and described Android source code is uploaded to central server by compiling source code corresponding to file destination that main frame obtains compiling;
Or,
Compiler server obtains the Android source code that each file destination is corresponding from compiling main frame.
In conjunction with the possible implementation of the second of second aspect, in the third possible implementation of second aspect, described method also comprises:
Described mapping relations are sent to compiling main frame, described mapping relations are obtained the routing information of the dependent file that file to be compiled relies on for making to compile main frame, obtain described dependent file according to described routing information, and the file to be compiled compiling in the first directory tree according to described dependent file obtains file destination.
In conjunction with the possible implementation of the second of second aspect, in the 4th kind of possible implementation of second aspect, described method also comprises:
The fileinfo of the dependent file that the file described to be compiled that reception compiling main frame sends relies on, described fileinfo at least comprises the file name of described dependent file;
According to the fileinfo of described dependent file, inquire about described mapping relations and obtain the routing information of described dependent file.
According to the third aspect of disclosure embodiment, a kind of program compilation device is provided, comprising:
The first query unit, for the dependent file relying on from the first directory tree query compiler file to be compiled;
The first acquiring unit, for the second directory tree obtaining from compiler server compiling Android source code, obtains described dependent file;
Compilation unit, for according to the described file to be compiled of described dependent file compiling, obtains file destination.
In conjunction with the third aspect, in the possible implementation of the first of the third aspect, described the first acquiring unit, comprising:
First obtains subelement, for obtaining the routing information of described dependent file described compiler server from described the second directory tree;
Second obtains subelement, for obtaining described dependent file according to described routing information.
In conjunction with the possible implementation of the first of the third aspect, in the possible implementation of the second of the third aspect, described first obtains subelement, comprising:
First receives subelement, for receiving the mapping relations between each dependent file and the routing information of described the second directory tree that described compiler server sends;
The first inquiry subelement, for according to described mapping relations, inquires about and obtains routing information corresponding to dependent file that described file to be compiled relies on.
In conjunction with the third aspect, in the third possible implementation of the third aspect, described the first acquiring unit, comprising:
Transmitting element, for send the fileinfo of the dependent file that described file to be compiled relies on to described compiler server, described fileinfo at least comprises the file name of described dependent file;
Second receives subelement, the described dependent file obtaining according to the fileinfo of described dependent file for receiving described compiler server; Inquire about the mapping relations between each dependent file and the routing information in described the second directory tree by compiler server, the routing information of the described dependent file obtaining, and obtain described dependent file according to described routing information; Described mapping relations are kept in described compiler server.
In conjunction with the third aspect, in the 4th kind of possible implementation of the third aspect, described the first query unit, comprising:
The 3rd obtains subelement, and for obtaining the dependence of described first each file to be compiled of directory tree, described dependence is for storing the corresponding relation between each file to be compiled and dependent file that described in each, file to be compiled relies on;
The second inquiry subelement, for according to described dependence, inquires about and obtains the dependent file that described file to be compiled relies on.
In conjunction with the third aspect, in the 5th kind of possible implementation of the third aspect, described device also comprises:
Search unit, for search the dependent file that whether exists described file to be compiled to rely at described the first directory tree; When in described the first directory tree, do not exist described file to be compiled to rely on dependent file time, output makes described the first acquiring unit carry out the signal of corresponding actions.
According to the fourth aspect of disclosure embodiment, a kind of program compilation device is provided, comprising:
The first acquiring unit, for obtaining Android source code;
The first compilation unit, obtains the second directory tree for compiling described Android source code, and preserves each dependent file in described the second directory tree and the mapping relations of routing information; Described mapping relations obtain for making to compile main frame the dependent file that file to be compiled relies on, and the file to be compiled compiling in the first directory tree according to described dependent file obtains file destination.
In conjunction with fourth aspect, in the possible implementation of the first of fourth aspect, described device also comprises:
Whether detecting unit, be modified for detection of the Android source code of storing in compiling main frame;
Source code updating block, in the time detecting that the described Android source code of compiling main frame is modified, according to the Android source code of storing in amended renewal compiler server;
The second compilation unit, for compiling the Android source code after renewal, upgrades each dependent file in described the second directory tree.
Should be understood that, it is only exemplary and explanatory that above general description and details are hereinafter described, and can not limit the disclosure.
The technical scheme that embodiment of the present disclosure provides can comprise following beneficial effect: first from being stored in the first directory tree compiling main frame, which (or which) dependent file the file to be compiled that query compiler is selected depends on, determine after the dependent file that file to be compiled relies on, from being stored in the second directory tree compiler server, obtain described dependent file; Then, utilize the described file to be compiled of described dependent file compiling, obtain final file destination.Realize in the time of compiling Android source code, can depend on other the directory tree (the second directory tree) except the directory tree at file to be compiled place, without a set of complete Android source code of research staff's download-maintenance, only need to download source code corresponding to this module, reduced taking of hard drive space.And, can directly from the second directory tree, obtain and compile the required dependent file of file destination that obtains this module, without obtain described dependent file by compiling, thereby save time and resource that compiling dependent file takies.Therefore, the program compiling method that the disclosure provides has greatly reduced required hard drive space and compilation time, has improved system development efficiency.
Brief description of the drawings
Accompanying drawing is herein merged in instructions and forms the part of this instructions, shows and meets embodiment of the present disclosure, and be used from and explain principle of the present disclosure with instructions one.
Fig. 1 is according to the process flow diagram of a kind of program compiling method shown in an exemplary embodiment.
Fig. 2 is according to a kind of process flow diagram of step S120 in the Fig. 1 shown in an exemplary embodiment;
Fig. 3 is according to the another kind of process flow diagram of step S120 in the Fig. 1 shown in an exemplary embodiment;
Fig. 4 is according to the process flow diagram of the another kind of program compiling method shown in an exemplary embodiment;
Fig. 5 is according to the dependence graph between a kind of file destination shown in an exemplary embodiment and dependent file;
Fig. 6 is according to the process flow diagram of a kind of Compilation Method shown in an exemplary embodiment;
Fig. 7 is according to the process flow diagram of the another kind of program compiling method shown in an exemplary embodiment;
Fig. 8 is according to the block diagram of a kind of program compilation device shown in an exemplary embodiment;
Fig. 9 is according to the block diagram of the another kind of program compilation device shown in an exemplary embodiment;
Figure 10 is a kind of for realizing the block diagram of device of program compilation according to shown in an exemplary embodiment;
Figure 11 is a kind of for realizing the block diagram of server of program compilation according to shown in an exemplary embodiment.
Embodiment
Here will at length describe exemplary embodiment, its sample table shows in the accompanying drawings.When description below relates to accompanying drawing, unless separately there is expression, the same numbers in different accompanying drawings represents same or analogous key element.Embodiment described in following exemplary embodiment does not represent all embodiments consistent with the disclosure.On the contrary, they are only and the example of apparatus and method as consistent in some aspects that described in detail in appended claims, of the present disclosure.
For example, the corresponding file destination A of certain module, and file destination A depends on file B(by file B establishment file destination A), Make instrument is in the time of build targets A, first search and whether have the file B that meets dependence condition, if there is no,, after compiling obtains file B, could utilize file B compiling to obtain file destination A.Hence one can see that, and system research and development personnel may only need certain module of development& testing or small project, but need to be at a set of Android source code completing of local maintenance.
Fig. 1 is according to the process flow diagram of a kind of program compiling method shown in an exemplary embodiment, and as shown in Figure 1, described program compiling method is used for compiling main frame, comprises the following steps:
In step S110, the dependent file that query compiler file to be compiled relies on from the first directory tree.
The program compiling method that this exemplary embodiment provides is mainly used in compiling Android source code.Described file to be compiled can be the corresponding source code of certain module of dividing in whole Android source code development system.
Before compiling, need to search the dependent file that file to be compiled relies on, for example, after completing, certain module compiles obtains file destination A, and file destination A depends on file B, obtain file destination A by file B compiling, before obtaining file destination A, first need to determine which file file destination A depends on.
Described file to be compiled is Android source code, and for example, target is A, and corresponding file to be compiled is the source code that target A is corresponding.Described the first directory tree can be obtained by compiling main frame compiling, also can be compiled or other compiling main frame compiling obtains by compiler server.
In an exemplary embodiment of the present disclosure, step S110 can comprise following methods flow process:
1) obtain the dependence of each file to be compiled in described the first directory tree, described dependence is for describing the corresponding relation between each file to be compiled and dependent file that described in each, file to be compiled relies on.Can the relation of interdependence between the modules of Android source code be described by the makefile file in Make instrument, makefile files specify the file destination finally obtaining (executable file) and generate the relation between each dependent file of this file destination.
2), according to described dependence, inquiry obtains the dependent file that described file to be compiled relies on.
In step S120, the second directory tree obtaining from compiler server compiling Android source code, obtain described dependent file.
Compiler server obtains the second directory tree to the Android compilation of source code that belongs to same version with the compiling main frame Android source code that will compile obtaining, and described compiling main frame obtains the qualified dependent file that described file to be compiled relies on from described the second directory tree.For example, eligible can be to meet time conditions etc.
For the Android source code of same version, dependence between the dependent file that certain target and this target rely on is identical, compile the first directory tree that main frame obtains the Android compilation of source code of a certain version, with the second directory tree that compiler server (or another compiling main frame) obtains the Android compilation of source code of described a certain version, in two directory trees, the dependence of same target is identical.
In an exemplary embodiment of the present disclosure, as shown in Figure 2, step S120 can comprise following sub-step:
S121 obtains the routing information of described dependent file in described compiler server from described the second directory tree.
In an exemplary embodiment of the present disclosure, obtain the routing information of described dependent file and can realize by following flow process:
Compiling main frame receives each dependent file in described the second directory tree that described compiler server sends and the mapping relations between routing information; Then,, according to described mapping relations, inquiry obtains the routing information that relied on dependent file is corresponding.First described mapping relations are stored on compiling main frame, inquire about described mapping relations on main frame and obtain the routing information of described dependent file in compiling.
Compiling main frame obtains described mapping relations, can be first by compiling main frame to compiler server transmit path request message, and described path request message is for asking compiler server to send the routing information of dependent file; Then, respond described path request message by compiler server, send the mapping relations between each dependent file and the routing information in the second directory tree to compiling main frame.Can also be after described the second directory tree of the each renewal of compiler server, issue the mapping relations between each dependent file and the routing information in the second directory tree after renewal from each compiling main frame of trend, this kind of mode can reduce the visit capacity of each compiling main frame to compiler server, thereby reduces the hardware configuration requirement of compiler server.
S122, obtains described dependent file according to described routing information.The described routing information obtaining is sent to compiler server by compiling main frame, then, obtained the dependent file of storing in the storage space that described routing information is corresponding by compiler server, and be handed down to described compiling main frame.
In another exemplary embodiment of the present disclosure, as shown in Figure 3, step S120 can comprise following sub-step:
S123, the fileinfo of the dependent file relying on to the described file to be compiled of compiler server transmission, described fileinfo at least comprises the file name of described dependent file.
When described dependent file is that while compiling certain file destination obtaining, described file name is the file name of described file destination.
S124, receives the described dependent file that described compiler server obtains according to the fileinfo of described dependent file; Inquire about the mapping relations between each dependent file and the routing information in described the second directory tree by compiler server, the routing information of the described dependent file obtaining, and obtain described dependent file according to described routing information; Described mapping relations are kept in described compiler server.
The fileinfo of the dependent file that compiler server sends according to described compiling main frame is searched the routing information of described dependent file, and is obtained the file of storing in the storage space that described routing information is corresponding, and is handed down to described compiling main frame in compiler server.Wherein, the routing information of described dependent file is inquired about the mapping relations between each file and routing information in the second directory tree and is obtained.
In step S130, according to the described file to be compiled of described dependent file compiling, obtain file destination.
The program compiling method that this exemplary embodiment provides, first, in the first directory tree from compiling main frame, inquires about file to be compiled and depends on which dependent file, then, from being stored in the second directory tree compiler server, obtains described dependent file; Recycle the described file to be compiled of described dependent file compiling, obtain final file destination, thereby realized in the time of compiling Android source code, can depend on other the directory tree (the second directory tree) except the directory tree at file to be compiled place.Research staff only need preserve in this locality described file to be compiled (source code that this module is corresponding), without a set of complete Android source code of download-maintenance, has reduced taking of hard drive space.And, can directly from the second directory tree, obtain qualified dependent file, without obtain described dependent file by compiling, thereby save time and resource that compiling dependent file takies.Therefore, the program compiling method that the disclosure provides has greatly reduced required hard drive space and compilation time, has improved system development efficiency.
Fig. 4 is according to the process flow diagram of the another kind of program compiling method shown in an exemplary embodiment, and as shown in Figure 4, described method is applied in compiling main frame, can, for compiling Android source code, comprise the following steps:
In step S110, the dependent file that query compiler file to be compiled relies on from the first directory tree.
In step S210, in described the first directory tree, search the dependent file that whether exists described file to be compiled to rely on.
When in described the first directory tree, do not exist described file to be compiled to rely on dependent file time, at step S120, the second directory tree obtaining from compiler server compiling Android source code, obtain described dependent file.
When in described the first directory tree, exist described file to be compiled to rely on dependent file time, in step S220, from described the first directory tree, obtain described dependent file.
In step S130, according to the described file to be compiled of described dependent file compiling, obtain file destination.
Program compiling method shown in this exemplary embodiment, in the process of compiling Android source code, first determine which dependent file file to be compiled depends on, in the first directory tree of the local storage of compiling main frame, search whether there is qualified described dependent file, if existed, preferentially from the first directory tree, obtain described dependent file, reduced the visit capacity of compiler server, thereby can reduce the hardware requirement of compiler server.
Below in conjunction with the dependence between the file destination shown in Fig. 5 and dependent file, above-mentioned program compilation flow process is described.Fig. 5 shows the relation between file destination G and all dependent file, and concrete, file destination G depends on E and F; File destination E depends on C; File destination F depends on D; File destination C depends on A; File destination D depends on A and B.
Suppose, in compiling main frame, file destination corresponding to file to be compiled is G, and according to the dependence graph shown in Fig. 5, can find the dependent file that file destination G relies on is E and F.Then in the second directory tree of, storing, obtain qualified dependent file E and F from compiler server.Compile file to be compiled according to dependent file and obtain file destination G.
Alternatively, in the time finding the dependent file of file destination G and be E and F, whether can first search in first directory tree of compiling in main frame Existence dependency file E and F, in the time of Existence dependency file E in the first directory tree and F, preferentially from the first directory tree, obtain described dependent file E and F, thereby reduce the visit capacity of compiling main frame to compiler server.
Fig. 6 is according to the process flow diagram of a kind of program compiling method shown in an exemplary embodiment, and as shown in Figure 6, described method is applied to compiler server, comprises the following steps:
In step S610, obtain Android source code.
Compiler server need to obtain the Android source code identical with compiling source code version on main frame.
In step S620, compile described Android source code and obtain the second directory tree, and preserve each dependent file in described the second directory tree and the mapping relations of routing information; Described mapping relations obtain for making to compile main frame the dependent file that file to be compiled relies on, and the file to be compiled compiling in the first directory tree according to described dependent file obtains file destination.
In an exemplary embodiment of the present disclosure, compiling main frame obtains according to the described mapping relations in compiler server the dependent file that file to be compiled relies on, can be that described mapping relations are sent to compiling main frame by compiler server, compiling main frame obtains the routing information of the dependent file that file to be compiled relies on according to described mapping relations, then, described routing information is sent to compiler server by compiling main frame, obtained the dependent file of storing in the storage space that described routing information is corresponding by compiler server, and be handed down to described compiling main frame.
In another exemplary embodiment of the present disclosure, compiling main frame sends the fileinfo of described dependent file to compiler server, and described fileinfo at least comprises the file name of described dependent file.
Compiler server, according to the fileinfo of described dependent file, is inquired about the routing information of described dependent file from described mapping relations, and obtains described dependent file according to described routing information and be handed down to compiling main frame.
The program compiling method that this exemplary embodiment provides, the Android source code that compiler server compiling obtains obtains the second directory tree, and obtains the mapping relations between each file and routing information in the second directory tree.Compiling main frame, according to described mapping relations, obtains the dependent file that the file to be compiled of storage relies on from the second directory tree, could obtain described dependent file thereby avoid compiling main frame at native compile, has saved and has compiled time and the resource that dependent file takies.And described compiling main frame, without at a set of complete Android source code of local download-maintenance, only needs to download source code corresponding to this module, has reduced taking of hard drive space.Greatly reduce required hard drive space and compilation time, improved system development efficiency.
Because Android source code is very huge, in the time of the system research and development of Android source code, conventionally Android source code system item is decomposed into multiple manageable modules, different research and development groups are responsible for different modules, therefore, compiler server need to obtain the Android source code of the up-to-date amendment of modules.Fig. 7 is according to the process flow diagram of the another kind of program compiling method shown in an exemplary embodiment, as shown in Figure 7, said method comprising the steps of:
In step S610, obtain Android source code.
In step S620, compile described Android source code and obtain the second directory tree, and preserve each dependent file in described the second directory tree and the mapping relations of routing information.Described mapping relations obtain for making to compile main frame the dependent file that file to be compiled relies on, and the file to be compiled compiling in the first directory tree according to described dependent file obtains file destination.
In step S710, whether the described Android source code detecting in compiling main frame is modified.
In an exemplary embodiment of the present disclosure, each compiling main frame is revised after Android source code in compilation process, upload amended Android source code to central server, Android source code corresponding to modules (file destination) that compiler server is stored from central server.
Alternatively, compiling main frame can, in the time of idle condition, be uploaded amended Android source code to central server.
Whether compiler server is relatively more identical with Android source code corresponding in central server at the Android source code of this locality storage, if different, determines that Android source code has renewal.It should be noted that, whether the Android source code of storing in the Android source code that the same module of more same version is stored in this locality and central server is identical.
Alternatively, compiler server can directly obtain from each compiling main frame the Android source code that modules (file destination) is corresponding.
In step S720, in the time detecting that the described Android source code compiling in main frame is modified, according to amended source code, upgrade described Android source code.
In the process of the Android compilation of source code research and development of system research and development group to this module, will inevitably revise the Android source code of this module, therefore, need the corresponding Android source code of storing in compiler server that upgrades, and upgrade the second directory tree.
In step S730, the Android source code after compiling is upgraded, upgrades each dependent file in described the second directory tree.
Then, compiling main frame obtains the up-to-date dependent file that file to be compiled relies on, and obtains final file destination according to the described file to be compiled of described up-to-date dependent file compiling.
The program compiling method that this exemplary embodiment provides, can upgrade corresponding dependent file in the second directory tree according to the amended Android source code of modules, ensure always up-to-date dependent file of dependent file in the second directory tree, and then up-to-date dependent file is offered to corresponding compiling main frame, make to compile main frame and always can from the second directory tree, obtain qualified dependent file.
Corresponding to above-mentioned program compiling method, the disclosure also provides program compilation device embodiment.
Fig. 8 is according to the block diagram of a kind of program compilation device shown in an exemplary embodiment, this application of installation, in compiling main frame, is mainly used in compiling Android source code, as shown in Figure 8, this device comprises the first query unit 110, the first acquiring units 120 and compilation unit 130.
The first query unit 110 is configured to the dependent file that query compiler file to be compiled relies on from the first directory tree.
In an exemplary embodiment of the present disclosure, described the first query unit 110 can comprise: the 3rd obtains subelement and the second inquiry subelement;
The 3rd obtains subelement is configured to obtain the dependence of each file to be compiled in described the first directory tree, and described dependence is for storing the corresponding relation between each file to be compiled and dependent file that described in each, file to be compiled relies on;
The second inquiry subelement is configured to according to described dependence, and inquiry obtains the dependent file that described file to be compiled relies on.
Described file to be compiled is Android source code, and for example, target is A, and corresponding file to be compiled is the source code that target A is corresponding.Described the first directory tree can be obtained by compiling main frame compiling, also can be compiled or other compiling main frame compiling obtains by compiler server.
The second directory tree that the first acquiring unit 120 is configured to obtain from compiler server compiling Android source code, obtain described dependent file.
In an exemplary embodiment of the present disclosure, described the first acquiring unit can comprise: first obtains subelement and second obtains subelement;
Described first obtains subelement is configured to obtain the routing information of described dependent file in described compiler server from described the second directory tree.
Described first obtains subelement can comprise the first reception subelement and the first inquiry subelement;
Described first receives subelement is configured to receive each dependent file in described the second directory tree that described compiler server sends and the mapping relations between routing information.
Described the first inquiry subelement is configured to according to described mapping relations, and inquiry obtains routing information corresponding to dependent file that described file to be compiled relies on.
Described second obtains subelement is configured to obtain described dependent file according to described routing information.
In another exemplary embodiment of the present disclosure, described the first acquiring unit can comprise: transmitting element and second receives subelement;
Described transmitting element is configured to the fileinfo of the dependent file relying on to the described file to be compiled of described compiler server transmission, and described fileinfo at least comprises the file name of described dependent file.
Described second receives subelement is configured to receive the described dependent file that described compiler server obtains according to the fileinfo of described dependent file; Inquire about the mapping relations between each dependent file and the routing information in described the second directory tree by compiler server, the routing information of the described dependent file obtaining, and obtain described dependent file according to described routing information; Described mapping relations are kept in described compiler server.
Compilation unit 130 is configured to, according to the described file to be compiled of described dependent file compiling, obtain file destination.
Alternatively, as shown in Figure 8, described program compilation device also comprises: search unit 140.The described unit 140 of searching is configured to search in described the first directory tree the dependent file that whether exists described file to be compiled to rely on; When in described the first directory tree, do not exist described file to be compiled to rely on dependent file time, output makes described the first acquiring unit carry out the signal of corresponding actions.
The described program compilation device that the present embodiment provides, utilize in first directory tree of the first query unit from compiling main frame, inquire about file to be compiled and depend on which dependent file, then, from being stored in the second directory tree compiler server, obtain described dependent file by the first acquiring unit; Utilize the described file to be compiled of described dependent file compiling by compilation unit again, obtain final file destination, thereby realize in the time of compiling Android source code, can depend on other the directory tree (the second directory tree) except the directory tree at file to be compiled place.Research staff only need preserve in this locality described file to be compiled (source code that this module is corresponding), without a set of complete Android source code of download-maintenance, has reduced taking of hard drive space.And, can directly from the second directory tree, obtain qualified dependent file, without obtain described dependent file by compiling, thereby save time and resource that compiling dependent file takies.Therefore, the program compiling method that the disclosure provides has greatly reduced required hard drive space and compilation time, has improved system development efficiency.
About the device in above-described embodiment, wherein the concrete mode of unit executable operations have been described in detail in the embodiment about the method, will not elaborate explanation herein.
Fig. 9 is according to the block diagram of the another kind of program compilation device shown in an exemplary embodiment, and this program compilation application of installation is in compiler server, and as shown in Figure 9, described device comprises the first acquiring unit 210 and the first compilation unit 220;
The first acquiring unit 210 is configured to obtain Android source code.
The first compilation unit 220 is configured to compile described Android source code and obtains the second directory tree, and preserves each dependent file in described the second directory tree and the mapping relations of routing information; Described mapping relations obtain for making to compile main frame the dependent file that file to be compiled relies on, and the file to be compiled compiling in the first directory tree according to described dependent file obtains file destination.
Alternatively, as shown in Figure 9, described device can also comprise detecting unit 230, source code updating block 240 and the second compilation unit 250.
Whether detecting unit 230 is configured to detect the Android source code of storing in compiling main frame and is modified.
Source code updating block 240 is configured in the time detecting that the described Android source code compiling in main frame is modified, according to the Android source code of storing in amended renewal compiler server.
The second compilation unit 250 is configured to the Android source code after compiling is upgraded, and upgrades each dependent file in described the second directory tree.
Alternatively, the program compilation device shown in Fig. 9 can also comprise that the first transmitting element and first searches unit.
Described the first transmitting element is configured to the described mapping relations in compiler server to send to each compiling main frame, obtained the routing information of the dependent file that described file to be compiled relies on by described compiling main frame according to described mapping relations, and offer described compiler server.
Described first searches unit is configured to obtain according to the routing information that provides of compiling main frame the dependent file of storing in the storage space of described routing information.
Alternatively, the program compilation device shown in Fig. 9 can also comprise receiving element, and second searches unit and the second transmitting element.
Described receiving element is configured to receive the fileinfo of the dependent file that the file described to be compiled uploaded of compiling main frame relies on, and described fileinfo at least comprises the file name of described dependent file;
Described second searches unit is configured to, according to the mapping relations between each dependent file of storing in compiler server and routing information, search the routing information that described dependent file is corresponding, and obtain described dependent file according to described routing information.
Described transmitting element is configured to the described dependent file obtaining to be handed down to described compiling main frame; Described dependent file obtains file destination corresponding to described file to be compiled for making to compile main frame compiling.
The program compilation device that the present embodiment provides, obtain Android source code by the first acquiring unit, utilize the first compilation unit to compile described Android source code and obtain the second directory tree, and preserve each dependent file in described the second directory tree and the mapping relations of routing information; Then, compiling main frame obtains according to described mapping relations the dependent file that file to be compiled relies on, and the file to be compiled compiling in the first directory tree according to described dependent file obtains file destination.Realize in the time of compiling Android source code, can depend on other the directory tree (the second directory tree) except the directory tree at file to be compiled place.Avoid compiling main frame and could obtain described dependent file at native compile, saved time and resource that compiling dependent file takies.And described compiling main frame, without at a set of complete Android source code of local download-maintenance, only needs to download source code corresponding to this module, has reduced taking of hard drive space.Greatly reduce required hard drive space and compilation time, improved system development efficiency.
Figure 10 is a kind of for realizing the block diagram of device 800 of program compilation according to shown in an exemplary embodiment.For example, device 800 can be mobile phone, computing machine, digital broadcast terminal, information receiving and transmitting equipment, game console, flat-panel devices, Medical Devices, body-building equipment, personal digital assistant etc.
With reference to Figure 10, device 800 can comprise following one or more assembly: processing components 802, storer 804, power supply module 806, multimedia groupware 808, audio-frequency assembly 810, the interface 812 of I/O (I/O), sensor module 814, and communications component 816.
The integrated operation of processing components 802 common control device 800, such as with demonstration, call, data communication, the operation that camera operation and record operation are associated.Treatment element 802 can comprise that one or more processors 820 carry out instruction, to complete all or part of step of above-mentioned method.In addition, processing components 802 can comprise one or more modules, is convenient to mutual between processing components 802 and other assemblies.For example, processing element 802 can comprise multi-media module, to facilitate mutual between multimedia groupware 808 and processing components 802.
Storer 804 is configured to store various types of data to be supported in the operation of equipment 800.The example of these data comprises for any application program of operation on device 800 or the instruction of method, contact data, telephone book data, message, picture, video etc.Storer 804 can be realized by the volatibility of any type or non-volatile memory device or their combination, as static RAM (SRAM), Electrically Erasable Read Only Memory (EEPROM), Erasable Programmable Read Only Memory EPROM (EPROM), programmable read-only memory (prom), ROM (read-only memory) (ROM), magnetic store, flash memory, disk or CD.
Electric power assembly 806 provides electric power for installing 800 various assemblies.Electric power assembly 806 can comprise power-supply management system, one or more power supplys, and other and the assembly that generates, manages and distribute electric power to be associated for device 800.
Multimedia groupware 808 is included in the screen that an output interface is provided between described device 800 and user.In certain embodiments, screen can comprise liquid crystal display (LCD) and touch panel (TP).If screen comprises touch panel, screen may be implemented as touch-screen, to receive the input signal from user.Touch panel comprises that one or more touch sensors are with the gesture on sensing touch, slip and touch panel.Described touch sensor is the border of sensing touch or sliding action not only, but also detects duration and the pressure relevant to described touch or slide.In certain embodiments, multimedia groupware 808 comprises a front-facing camera and/or post-positioned pick-up head.When equipment 800 is in operator scheme, during as screening-mode or video mode, front-facing camera and/or post-positioned pick-up head can receive outside multi-medium data.Each front-facing camera and post-positioned pick-up head can be fixing optical lens systems or have focal length and optical zoom ability.
Audio-frequency assembly 810 is configured to output and/or input audio signal.For example, audio-frequency assembly 810 comprises a microphone (MIC), and when device 800 is in operator scheme, during as call model, logging mode and speech recognition mode, microphone is configured to receive external audio signal.The sound signal receiving can be further stored in storer 804 or be sent via communications component 816.In certain embodiments, audio-frequency assembly 810 also comprises a loudspeaker, for output audio signal.
I/O interface 812 is for providing interface between processing components 802 and peripheral interface module, and above-mentioned peripheral interface module can be keyboard, some striking wheel, button etc.These buttons can include but not limited to: home button, volume button, start button and locking press button.
Sensor module 814 comprises one or more sensors, is used to device 800 that the state estimation of various aspects is provided.For example, sensor module 814 can detect the opening/closing state of equipment 800, the relative positioning of assembly, for example described assembly is display and the keypad of device 800, the position of all right pick-up unit 800 of sensor module 814 or 800 1 assemblies of device changes, user is with device 800 existence that contact or do not have the temperature variation of device 800 orientation or acceleration/deceleration and device 800.Sensor module 814 can comprise proximity transducer, be configured to without any physical contact time detect near the existence of object.Sensor module 814 can also comprise optical sensor, as CMOS or ccd image sensor, for using in imaging applications.In certain embodiments, this sensor module 814 can also comprise acceleration transducer, gyro sensor, Magnetic Sensor, pressure transducer or temperature sensor.
Communications component 816 is configured to be convenient to the communication of wired or wireless mode between device 800 and other equipment.Device 800 wireless networks that can access based on communication standard, as WiFi, 2G or 3G, or their combination.In one exemplary embodiment, communication component 816 receives broadcast singal or the broadcast related information from external broadcasting management system via broadcast channel.In one exemplary embodiment, described communication component 816 also comprises near-field communication (NFC) module, to promote junction service.For example, can be based on radio-frequency (RF) identification (RFID) technology in NFC module, Infrared Data Association (IrDA) technology, ultra broadband (UWB) technology, bluetooth (BT) technology and other technologies realize.
In the exemplary embodiment, device 800 can be realized by one or more application specific integrated circuit (ASIC), digital signal processor (DSP), digital signal processing appts (DSPD), programmable logic device (PLD) (PLD), field programmable gate array (FPGA), controller, microcontroller, microprocessor or other electronic components, for carrying out said method.
In the exemplary embodiment, also provide a kind of non-provisional computer-readable recording medium that comprises instruction, for example, comprised the storer 804 of instruction, above-mentioned instruction can have been carried out said method by the processor 820 of device 800.For example, described non-provisional computer-readable recording medium can be ROM, random-access memory (ram), CD-ROM, tape, floppy disk and optical data storage equipment etc.
A kind of non-provisional computer-readable recording medium, in the time that the instruction in described storage medium is carried out by the processor of mobile terminal, makes mobile terminal can carry out a kind of program compiling method, and described method comprises:
The dependent file that query compiler file to be compiled relies on from the first directory tree;
The second directory tree obtaining from compiler server compiling Android source code, obtain described dependent file;
According to the described file to be compiled of described dependent file compiling, obtain file destination.
Alternatively, the second directory tree obtaining from compiler server compiling Android source code, obtain described dependent file, in the following way:
From described the second directory tree, obtain the routing information of described dependent file in described compiler server;
Obtain described dependent file according to described routing information.
Alternatively, from described the second directory tree, obtain the routing information of described dependent file, in the following way:
Receive each dependent file in described the second directory tree that described compiler server sends and the mapping relations between routing information;
According to described mapping relations, inquiry obtains routing information corresponding to dependent file that described file to be compiled relies on.
Alternatively, the second directory tree obtaining from compiler server compiling Android source code, obtain described dependent file, in the following way:
The fileinfo of the dependent file relying on to the described file to be compiled of described compiler server transmission, described fileinfo at least comprises the file name of described dependent file;
Receive the described dependent file that described compiler server obtains according to the fileinfo of described dependent file; Inquire about the mapping relations between each dependent file and the routing information in described the second directory tree by compiler server, the routing information of the described dependent file obtaining, and obtain described dependent file according to described routing information; Described mapping relations are kept in described compiler server.
Alternatively, the described dependent file that query compiler file to be compiled relies on from the first directory tree, in the following way:
Obtain the dependence of each file to be compiled in described the first directory tree, described dependence is for storing the corresponding relation between each file to be compiled and dependent file that described in each, file to be compiled relies on;
According to described dependence, inquiry obtains the dependent file that described file to be compiled relies on.
Alternatively, described method also comprises: in described the first directory tree, search the dependent file that whether exists described file to be compiled to rely on; When in described the first directory tree, do not exist described file to be compiled to rely on dependent file time, carry out described the second directory tree obtaining from compiler server compiling Android source code, obtain the step of described dependence.
Figure 11 is the structural representation in disclosure embodiment.This server 1900 can because of configuration or performance is different produces larger difference, can comprise one or more central processing units (central processing units, CPU) 1922(for example, one or more processors) and storer 1932, for example one or more mass memory units of storage medium 1930(of one or more storage application programs 1942 or data 1944).Wherein, storer 1932 and storage medium 1930 can be of short duration storage or storage lastingly.The program that is stored in storage medium 1930 can comprise one or more modules (diagram does not mark), and each module can comprise a series of command operatings in server.Further, central processing unit 1922 can be set to communicate by letter with storage medium 1930, carries out a series of command operatings in storage medium 1930 on server 1900.
Server 1900 can also comprise one or more power supplys 1926, one or more wired or wireless network interfaces 1950, one or more IO interface 1958, one or more keyboards 1956, and/or, one or more operating systems 1941, for example Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM etc.
In the exemplary embodiment, also provide a kind of non-provisional computer-readable recording medium that comprises instruction, for example, comprised the storage medium 1930 of instruction, above-mentioned instruction can have been carried out said method by the processor of server 1,900 1922.For example, described non-provisional computer-readable recording medium can be ROM, random-access memory (ram), CD-ROM, tape, floppy disk and optical data storage equipment etc.
A kind of non-provisional computer-readable recording medium, in the time that the instruction in described storage medium is carried out by the processor of server, makes server can carry out a kind of program compiling method, and described method comprises:
Obtain Android source code;
Obtain the second directory tree, and preserve each dependent file in described the second directory tree and the mapping relations of routing information; Obtain for making to compile main frame the dependent file that file to be compiled relies on according to described mapping relations, and the file to be compiled compiling in the first directory tree according to described dependent file obtains file destination.
Alternatively, described method also comprises:
Whether detect the Android source code of storing in compiling main frame is modified;
In the time detecting that the described Android source code of storing in compiling main frame is modified, according to amended Android source code, upgrade the Android source code of storing in compiler server;
Android source code after compiling is upgraded, upgrades each dependent file in described the second directory tree.
Alternatively, obtain compiling main frame and compile source code corresponding to each file destination obtaining, in the following way:
Compiler server obtains the Android source code that each file destination is corresponding from central server, and described Android source code is uploaded to central server by compiling source code corresponding to file destination that main frame obtains compiling;
Or,
Compiler server obtains the Android source code that each file destination is corresponding from compiling main frame.
Alternatively, described method also comprises:
Described mapping relations are sent to compiling main frame, described mapping relations are obtained the routing information of the dependent file that file to be compiled relies on for making to compile main frame, obtain described dependent file according to described routing information, and the file to be compiled compiling in the first directory tree according to described dependent file obtains file destination.
Alternatively, described method also comprises: the fileinfo of the dependent file that the file described to be compiled that reception compiling main frame sends relies on, and described fileinfo at least comprises the file name of described dependent file; According to the fileinfo of described dependent file, inquire about described mapping relations and obtain the routing information of described dependent file.
Those skilled in the art, considering instructions and putting into practice after invention disclosed herein, will easily expect other embodiment of the present disclosure.The application is intended to contain any modification of the present disclosure, purposes or adaptations, and these modification, purposes or adaptations are followed general principle of the present disclosure and comprised undocumented common practise or the conventional techniques means in the art of the disclosure.Instructions and embodiment are only regarded as exemplary, and true scope of the present disclosure and spirit are pointed out by claim below.
Should be understood that, the disclosure is not limited to precision architecture described above and illustrated in the accompanying drawings, and can carry out various amendments and change not departing from its scope.The scope of the present disclosure is only limited by appended claim.
It should be noted that, in this article, relational terms such as " first " and " second " etc. is only used for an entity or operation to separate with another entity or operational zone, and not necessarily requires or imply and between these entities or operation, have the relation of any this reality or sequentially.And, term " comprises ", " comprising " or its any other variant are intended to contain comprising of nonexcludability, thereby the process, method, article or the equipment that make to comprise a series of key elements not only comprise those key elements, but also comprise other key elements of clearly not listing, or be also included as the intrinsic key element of this process, method, article or equipment.The in the situation that of more restrictions not, the key element being limited by statement " comprising ... ", and be not precluded within process, method, article or the equipment that comprises described key element and also have other identical element.

Claims (19)

1. a program compiling method, is characterized in that, comprising:
The dependent file that query compiler file to be compiled relies on from the first directory tree;
The second directory tree obtaining from compiler server compiling Android source code, obtain described dependent file;
According to the described file to be compiled of described dependent file compiling, obtain file destination.
2. method according to claim 1, is characterized in that, the second directory tree obtaining, obtains described dependent file from compiler server compiling Android source code, in the following way:
From described the second directory tree, obtain the routing information of described dependent file in described compiler server;
Obtain described dependent file according to described routing information.
3. method according to claim 2, is characterized in that, obtains the routing information of described dependent file in described compiler server from described the second directory tree, in the following way:
Receive each dependent file in described the second directory tree that described compiler server sends and the mapping relations between routing information;
According to described mapping relations, inquiry obtains routing information corresponding to dependent file that described file to be compiled relies on.
4. method according to claim 1, is characterized in that, the second directory tree obtaining, obtains described dependent file from compiler server compiling Android source code, in the following way:
The fileinfo of the dependent file relying on to the described file to be compiled of described compiler server transmission, described fileinfo at least comprises the file name of described dependent file;
Receive the described dependent file that described compiler server obtains according to the fileinfo of described dependent file; Inquire about the mapping relations between each dependent file and the routing information in described the second directory tree by compiler server, the routing information of the described dependent file obtaining, and obtain described dependent file according to described routing information; Described mapping relations are kept in described compiler server.
5. method according to claim 1, is characterized in that, the described dependent file that query compiler file to be compiled relies on from the first directory tree, in the following way:
Obtain the dependence of each file to be compiled in described the first directory tree, described dependence is for storing the corresponding relation between each file to be compiled and dependent file that described in each, file to be compiled relies on;
According to described dependence, inquiry obtains the dependent file that described file to be compiled relies on.
6. method according to claim 1, is characterized in that, described method also comprises:
In described the first directory tree, search the dependent file that whether exists described file to be compiled to rely on;
When in described the first directory tree, do not exist described file to be compiled to rely on dependent file time, carry out described the second directory tree obtaining from compiler server compiling Android source code, obtain the step of described dependence.
7. a program compiling method, is characterized in that, comprising:
Obtain Android source code;
Compile described Android source code and obtain the second directory tree, and preserve each dependent file in described the second directory tree and the mapping relations of routing information; Described mapping relations obtain for making to compile main frame the dependent file that file to be compiled relies on, and the file to be compiled compiling in the first directory tree according to described dependent file obtains file destination.
8. method according to claim 7, is characterized in that, described method also comprises:
Whether detect the Android source code of storing in compiling main frame is modified;
In the time detecting that the described Android source code of storing in compiling main frame is modified, according to amended Android source code, upgrade the Android source code of storing in compiler server;
Android source code after compiling is upgraded, upgrades each dependent file in described the second directory tree.
9. want the method described in 8 according to right, it is characterized in that, obtain compiling main frame and compile source code corresponding to each file destination obtaining, in the following way:
Compiler server obtains the Android source code that each file destination is corresponding from central server, and described Android source code is uploaded to central server by compiling source code corresponding to file destination that main frame obtains compiling;
Or,
Compiler server obtains the Android source code that each file destination is corresponding from compiling main frame.
10. method according to claim 9, is characterized in that, described method also comprises:
Described mapping relations are sent to compiling main frame, described mapping relations are obtained the routing information of the dependent file that file to be compiled relies on for making to compile main frame, obtain described dependent file according to described routing information, and the file to be compiled compiling in the first directory tree according to described dependent file obtains file destination.
11. methods according to claim 9, is characterized in that, described method also comprises:
The fileinfo of the dependent file that the file described to be compiled that reception compiling main frame sends relies on, described fileinfo at least comprises the file name of described dependent file;
According to the fileinfo of described dependent file, inquire about described mapping relations and obtain the routing information of described dependent file.
12. 1 kinds of program compilation devices, is characterized in that, comprising:
The first query unit, for the dependent file relying on from the first directory tree query compiler file to be compiled;
The first acquiring unit, for the second directory tree obtaining from compiler server compiling Android source code, obtains described dependent file;
Compilation unit, for according to the described file to be compiled of described dependent file compiling, obtains file destination.
13. devices according to claim 12, is characterized in that, described the first acquiring unit, comprising:
First obtains subelement, for obtaining the routing information of described dependent file described compiler server from described the second directory tree;
Second obtains subelement, for obtaining described dependent file according to described routing information.
14. devices according to claim 13, is characterized in that, described first obtains subelement, comprising:
First receives subelement, for receiving the mapping relations between each dependent file and the routing information of described the second directory tree that described compiler server sends;
The first inquiry subelement, for according to described mapping relations, inquires about and obtains routing information corresponding to dependent file that described file to be compiled relies on.
15. devices according to claim 12, is characterized in that, described the first acquiring unit, comprising:
Transmitting element, for send the fileinfo of the dependent file that described file to be compiled relies on to described compiler server, described fileinfo at least comprises the file name of described dependent file;
Second receives subelement, the described dependent file obtaining according to the fileinfo of described dependent file for receiving described compiler server; Inquire about the mapping relations between each dependent file and the routing information in described the second directory tree by compiler server, the routing information of the described dependent file obtaining, and obtain described dependent file according to described routing information; Described mapping relations are kept in described compiler server.
16. devices according to claim 12, is characterized in that, described the first query unit, comprising:
The 3rd obtains subelement, and for obtaining the dependence of described first each file to be compiled of directory tree, described dependence is for storing the corresponding relation between each file to be compiled and dependent file that described in each, file to be compiled relies on;
The second inquiry subelement, for according to described dependence, inquires about and obtains the dependent file that described file to be compiled relies on.
17. devices according to claim 12, is characterized in that, described device also comprises:
Search unit, for search the dependent file that whether exists described file to be compiled to rely at described the first directory tree; When in described the first directory tree, do not exist described file to be compiled to rely on dependent file time, output makes described the first acquiring unit carry out the signal of corresponding actions.
18. 1 kinds of program compilation devices, is characterized in that, comprising:
The first acquiring unit, for obtaining Android source code;
The first compilation unit, obtains the second directory tree for compiling described Android source code, and preserves each dependent file in described the second directory tree and the mapping relations of routing information; Described mapping relations obtain for making to compile main frame the dependent file that file to be compiled relies on, and the file to be compiled compiling in the first directory tree according to described dependent file obtains file destination.
19. devices according to claim 18, is characterized in that, described device also comprises:
Whether detecting unit, be modified for detection of the Android source code of storing in compiling main frame;
Source code updating block, in the time detecting that the described Android source code of compiling main frame is modified, according to the Android source code of storing in amended renewal compiler server;
The second compilation unit, for compiling the Android source code after renewal, upgrades each dependent file in described the second directory tree.
CN201410055020.9A 2014-02-18 2014-02-18 Program compiling method and relevant apparatus Active CN103870310B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410055020.9A CN103870310B (en) 2014-02-18 2014-02-18 Program compiling method and relevant apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410055020.9A CN103870310B (en) 2014-02-18 2014-02-18 Program compiling method and relevant apparatus

Publications (2)

Publication Number Publication Date
CN103870310A true CN103870310A (en) 2014-06-18
CN103870310B CN103870310B (en) 2017-07-14

Family

ID=50908877

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410055020.9A Active CN103870310B (en) 2014-02-18 2014-02-18 Program compiling method and relevant apparatus

Country Status (1)

Country Link
CN (1) CN103870310B (en)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104866369A (en) * 2015-05-22 2015-08-26 广州华多网络科技有限公司 Data processing method and apparatus
CN105718296A (en) * 2016-04-21 2016-06-29 北京元心科技有限公司 Generation display method and device for compiling dependency tree
WO2017000601A1 (en) * 2015-06-29 2017-01-05 中兴通讯股份有限公司 Software compiling method and apparatus
CN106796522A (en) * 2015-01-22 2017-05-31 华为技术有限公司 System and method for updating source code file
CN107783765A (en) * 2017-10-17 2018-03-09 杭州迪普科技股份有限公司 file compiling method and device
CN108595200A (en) * 2018-04-19 2018-09-28 北京微播视界科技有限公司 Code update method, figure update method, device, storage medium and terminal
CN109344051A (en) * 2018-08-28 2019-02-15 北京达佳互联信息技术有限公司 Method, apparatus, electronic equipment and the storage medium of data processing
CN109669692A (en) * 2018-12-21 2019-04-23 深圳Tcl新技术有限公司 Source code sharing method, server, computer readable storage medium and system
CN109710266A (en) * 2019-01-17 2019-05-03 郑州云海信息技术有限公司 Task processing method, host server, heterogeneous system in a kind of heterogeneous system
CN110058850A (en) * 2019-04-10 2019-07-26 腾讯音乐娱乐科技(深圳)有限公司 A kind of development approach of application, device and storage medium
CN110389762A (en) * 2018-04-19 2019-10-29 北京京东尚科信息技术有限公司 The method and apparatus of AAR packet are handled in Android engineering
CN110554965A (en) * 2019-09-05 2019-12-10 腾讯科技(深圳)有限公司 automated fuzz testing method, related equipment and computer readable storage medium
CN110737437A (en) * 2018-07-20 2020-01-31 北京君正集成电路股份有限公司 compiling method and device based on code integration
CN110737429A (en) * 2018-07-20 2020-01-31 北京君正集成电路股份有限公司 modular compiling method and device utilizing Makefile self-dependent relationship
CN110737438A (en) * 2018-07-20 2020-01-31 北京君正集成电路股份有限公司 data processing method and device
CN110955415A (en) * 2019-12-03 2020-04-03 杭州当贝网络科技有限公司 Method for adapting projection multi-platform service
CN111078264A (en) * 2018-10-22 2020-04-28 杭州海康威视系统技术有限公司 Application upgrading method and device
CN111459499A (en) * 2020-04-20 2020-07-28 网易(杭州)网络有限公司 Program compiling method and device, computer storage medium and electronic equipment
CN111475164A (en) * 2020-03-02 2020-07-31 百度在线网络技术(北京)有限公司 Component dependency relationship detection method and device and electronic equipment
CN112748946A (en) * 2019-10-30 2021-05-04 腾讯科技(深圳)有限公司 Application program installation file generation method and device, computing equipment and storage medium
CN112965720A (en) * 2021-02-19 2021-06-15 上海微盟企业发展有限公司 Component compiling method, device, equipment and computer readable storage medium
WO2021146898A1 (en) * 2020-01-21 2021-07-29 深圳元戎启行科技有限公司 Compilation method and apparatus, computer device, and computer readable storage medium
CN113296778A (en) * 2020-04-13 2021-08-24 阿里巴巴集团控股有限公司 Resource file processing method, device, server, client and system
CN114020694A (en) * 2021-10-19 2022-02-08 北京五八信息技术有限公司 Header file address acquisition method and device, electronic equipment and storage medium
CN117251165A (en) * 2023-08-24 2023-12-19 上海合芯数字科技有限公司 Method, device, terminal and medium for compiling building

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090049434A1 (en) * 2007-08-14 2009-02-19 Oki Electric Industry Co., Ltd. Program translating apparatus and compiler program
CN101821711A (en) * 2007-08-23 2010-09-01 埃森哲环球服务有限公司 Binary library
CN102118500A (en) * 2010-12-27 2011-07-06 清华大学 Software package-based online automatic updating method for open source operating system of mobile terminal
CN102156643A (en) * 2011-04-25 2011-08-17 青岛海信传媒网络技术有限公司 Software integration method and system thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090049434A1 (en) * 2007-08-14 2009-02-19 Oki Electric Industry Co., Ltd. Program translating apparatus and compiler program
CN101821711A (en) * 2007-08-23 2010-09-01 埃森哲环球服务有限公司 Binary library
CN102118500A (en) * 2010-12-27 2011-07-06 清华大学 Software package-based online automatic updating method for open source operating system of mobile terminal
CN102156643A (en) * 2011-04-25 2011-08-17 青岛海信传媒网络技术有限公司 Software integration method and system thereof

Cited By (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106796522A (en) * 2015-01-22 2017-05-31 华为技术有限公司 System and method for updating source code file
CN106796522B (en) * 2015-01-22 2019-11-26 华为技术有限公司 System and method for updating source code file
CN104866369B (en) * 2015-05-22 2018-05-08 广州华多网络科技有限公司 The method and device of a kind of data processing
CN104866369A (en) * 2015-05-22 2015-08-26 广州华多网络科技有限公司 Data processing method and apparatus
CN106325966B (en) * 2015-06-29 2019-08-13 南京中兴软件有限责任公司 Software compilation method and device
WO2017000601A1 (en) * 2015-06-29 2017-01-05 中兴通讯股份有限公司 Software compiling method and apparatus
CN106325966A (en) * 2015-06-29 2017-01-11 中兴通讯股份有限公司 Software compiling method and device
CN105718296A (en) * 2016-04-21 2016-06-29 北京元心科技有限公司 Generation display method and device for compiling dependency tree
CN105718296B (en) * 2016-04-21 2019-11-08 北京元心科技有限公司 Generation display method and device for compiling dependency tree
CN107783765A (en) * 2017-10-17 2018-03-09 杭州迪普科技股份有限公司 file compiling method and device
CN108595200A (en) * 2018-04-19 2018-09-28 北京微播视界科技有限公司 Code update method, figure update method, device, storage medium and terminal
CN108595200B (en) * 2018-04-19 2020-05-15 北京微播视界科技有限公司 Code updating method, graph updating method, device, storage medium and terminal
CN110389762A (en) * 2018-04-19 2019-10-29 北京京东尚科信息技术有限公司 The method and apparatus of AAR packet are handled in Android engineering
CN110737437A (en) * 2018-07-20 2020-01-31 北京君正集成电路股份有限公司 compiling method and device based on code integration
CN110737438A (en) * 2018-07-20 2020-01-31 北京君正集成电路股份有限公司 data processing method and device
CN110737429A (en) * 2018-07-20 2020-01-31 北京君正集成电路股份有限公司 modular compiling method and device utilizing Makefile self-dependent relationship
CN109344051A (en) * 2018-08-28 2019-02-15 北京达佳互联信息技术有限公司 Method, apparatus, electronic equipment and the storage medium of data processing
CN109344051B (en) * 2018-08-28 2022-03-25 北京达佳互联信息技术有限公司 Data processing method and device, electronic equipment and storage medium
CN111078264A (en) * 2018-10-22 2020-04-28 杭州海康威视系统技术有限公司 Application upgrading method and device
CN109669692A (en) * 2018-12-21 2019-04-23 深圳Tcl新技术有限公司 Source code sharing method, server, computer readable storage medium and system
CN109710266A (en) * 2019-01-17 2019-05-03 郑州云海信息技术有限公司 Task processing method, host server, heterogeneous system in a kind of heterogeneous system
CN109710266B (en) * 2019-01-17 2022-02-18 郑州云海信息技术有限公司 Task processing method in heterogeneous system, host server and heterogeneous system
CN110058850A (en) * 2019-04-10 2019-07-26 腾讯音乐娱乐科技(深圳)有限公司 A kind of development approach of application, device and storage medium
CN110058850B (en) * 2019-04-10 2022-12-09 腾讯音乐娱乐科技(深圳)有限公司 Application development method and device and storage medium
CN110554965A (en) * 2019-09-05 2019-12-10 腾讯科技(深圳)有限公司 automated fuzz testing method, related equipment and computer readable storage medium
CN110554965B (en) * 2019-09-05 2021-08-17 腾讯科技(深圳)有限公司 Automated fuzz testing method, related equipment and computer readable storage medium
CN112748946B (en) * 2019-10-30 2023-11-24 腾讯科技(深圳)有限公司 Application program installation file generation method and device, computing equipment and storage medium
CN112748946A (en) * 2019-10-30 2021-05-04 腾讯科技(深圳)有限公司 Application program installation file generation method and device, computing equipment and storage medium
CN110955415A (en) * 2019-12-03 2020-04-03 杭州当贝网络科技有限公司 Method for adapting projection multi-platform service
CN110955415B (en) * 2019-12-03 2024-03-08 杭州当贝网络科技有限公司 Method for projecting multi-platform service adaptation
WO2021146898A1 (en) * 2020-01-21 2021-07-29 深圳元戎启行科技有限公司 Compilation method and apparatus, computer device, and computer readable storage medium
CN111475164A (en) * 2020-03-02 2020-07-31 百度在线网络技术(北京)有限公司 Component dependency relationship detection method and device and electronic equipment
CN111475164B (en) * 2020-03-02 2024-04-05 百度在线网络技术(北京)有限公司 Component dependency relationship detection method and device and electronic equipment
CN113296778A (en) * 2020-04-13 2021-08-24 阿里巴巴集团控股有限公司 Resource file processing method, device, server, client and system
CN113296778B (en) * 2020-04-13 2024-06-25 灵犀互动娱乐控股有限公司 Method, device, server, client and system for processing resource file
CN111459499A (en) * 2020-04-20 2020-07-28 网易(杭州)网络有限公司 Program compiling method and device, computer storage medium and electronic equipment
CN112965720A (en) * 2021-02-19 2021-06-15 上海微盟企业发展有限公司 Component compiling method, device, equipment and computer readable storage medium
CN112965720B (en) * 2021-02-19 2024-06-18 上海微盟企业发展有限公司 Component compiling method, device, equipment and computer readable storage medium
CN114020694A (en) * 2021-10-19 2022-02-08 北京五八信息技术有限公司 Header file address acquisition method and device, electronic equipment and storage medium
CN117251165A (en) * 2023-08-24 2023-12-19 上海合芯数字科技有限公司 Method, device, terminal and medium for compiling building

Also Published As

Publication number Publication date
CN103870310B (en) 2017-07-14

Similar Documents

Publication Publication Date Title
CN103870310A (en) Program compilation method and relevant device
KR101851082B1 (en) Method and device for information push
CN104866505B (en) Application recommendation method and device
CN105094931B (en) Method for upgrading software and device
CN105160854A (en) Equipment control method, device and terminal equipment
CN104951336A (en) Application program installation method and device
CN104267977A (en) Application program running method and device
CN104079962A (en) Method and device for pushing recommendation information
CN103339601A (en) Apparatus and method for providing application auto-install function in digital device
CN103916468B (en) Method for upgrading system, terminal, server and upgrade-system
CN107423106A (en) The method and apparatus for supporting more frame grammars
CN110235087A (en) A kind of method and terminal for realizing voice control
CN104038536A (en) Plug-in communication method and device
CN105094904A (en) Application program installation method and device
CN104281478A (en) Method and device for updating application programs
CN104811776A (en) Multimedia playing method and device
CN104199726B (en) Functions of the equipments extended method and device
CN104111979A (en) Search recommendation method and device
CN105808305A (en) Static resource loading method and device
CN105094830A (en) Method and device for executing target functions
CN106095455A (en) A kind of application update method and device
CN104881304A (en) Resource downloading method and device
CN104317647A (en) Application function realizing method, device and terminal
CN114115895A (en) Code query method and device, electronic equipment and storage medium
CN104038922A (en) File synchronization method and related device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant