Compiling method and device, equipment and storage medium
By obtaining and parsing the configuration information of the target code, automatically judge and rewrite its compilation mode, it can realize automated compilation in hot repair scenarios, solving the problem that developers need to set additional compilation methods, reducing workload and compilation time.
Patent Information
- Application Number
- CN202510024581.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-06
- Publication Date
- 2025-05-06
AI Technical Summary
In hot fix scenarios, developers need to set additional compilation methods, resulting in increased workload and increased code compilation time.
By obtaining the configuration information of the object code, judging its compilation mode, and rewriting the function called by the object code in the bytecode analysis mode to call the corresponding bytecode for compilation.
No need for developers to set up additional compilation methods, reducing developer workload and reducing code compilation time.
Smart Images

Figure CN119938058A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data processing technology, and in particular to a compilation method, apparatus, device and storage medium. Background Art
[0002] In the code compilation stage, the Android system generally turns on the inline optimization function by default. The inline optimization function refers to the process of determining whether there is a machine code corresponding to the running code stored in advance during the code compilation process. If so, the code is compiled by using machine code parsing.
[0003] However, in some compilation scenarios, such as hot fix scenarios, bytecode parsing is required to implement code compilation. In this scenario, developers are required to set additional compilation methods for specific codes, which increases the workload of developers and the code compilation time. Summary of the invention
[0004] The main purpose of this application is to provide a compilation method, apparatus, computer device and storage medium, which aims to solve the technical problem that developers need to set additional compilation methods for specific codes, which increases the workload of developers and increases the code compilation time.
[0005] To achieve the above object, the present application provides a compilation method, the method comprising:
[0006] Obtaining configuration information of the target code; the configuration information is used to characterize the compilation mode corresponding to the target code;
[0007] When the compilation mode corresponding to the target code is bytecode parsing, rewriting the function called by the target code;
[0008] Calling the bytecode corresponding to the target code according to the function called by the rewritten target code;
[0009] The target code is compiled by the bytecode.
[0010] Optionally, rewriting the function called by the target code includes:
[0011] Parsing the configuration information of the target code to obtain a function call address associated with the target code;
[0012] According to the function call address associated with the target code, determining whether the calling function corresponding to the target code is an entry function;
[0013] If the calling function corresponding to the target code is an entry function, modify the entry function to a replacement function;
[0014] The replacement function is determined as the function called by the rewritten target code.
[0015] Optionally, judging whether the calling function corresponding to the target code is an entry function according to the function calling address associated with the target code includes:
[0016] In a preset connection register, query the function call address to obtain the calling function corresponding to the target code;
[0017] Determine whether the calling function corresponding to the target code is an entry function.
[0018] Optionally, after determining whether the calling function corresponding to the target code is an entry function, the method further includes:
[0019] When the calling function corresponding to the target code is not an entry function, the configuration information of the target code is reparsed to obtain the function calling address associated with the target code.
[0020] Optionally, after determining the replacement function as the function called by the rewritten target code, the method further includes:
[0021] In a preset connection register, query the function call address to obtain the calling function corresponding to the target code;
[0022] If the calling function corresponding to the target code is the replacement function, the steps are performed: calling the bytecode corresponding to the target code according to the function called by the rewritten target code;
[0023] If the calling function corresponding to the target code is the entry function, a warning message is issued.
[0024] Optionally, calling the bytecode corresponding to the target code according to the function called by the rewritten target code includes:
[0025] Obtaining a bytecode address through a function called by the rewritten target code;
[0026] The bytecode corresponding to the target code is obtained through the bytecode address.
[0027] Optionally, after obtaining the configuration information of the target code, the method further includes:
[0028] When the compilation mode corresponding to the target code is machine code parsing, obtaining the machine code corresponding to the target code;
[0029] The target code is compiled by the machine code.
[0030] In addition, to achieve the above purpose, the present application also provides a compilation device, including:
[0031] A first acquisition module is used to acquire configuration information of the target code; the configuration information is used to characterize the compilation mode corresponding to the target code;
[0032] A rewriting module, used for rewriting the function called by the target code when the compilation mode corresponding to the target code is bytecode parsing;
[0033] A first calling module, used for calling the bytecode corresponding to the target code according to the function called by the rewritten target code;
[0034] The first compiling module is used to compile the target code through the bytecode.
[0035] In order to solve the above technical problems, the embodiment of the present application further provides a computer device, which adopts the following technical solution:
[0036] The computer device includes a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the steps of any one of the compilation methods proposed in the embodiments of the present application are implemented.
[0037] In order to solve the above technical problems, the embodiment of the present application further provides a computer-readable storage medium, which adopts the following technical solution:
[0038] The computer-readable storage medium stores a computer program, and when the computer program is executed by the processor, the steps of any one of the compilation methods proposed in the embodiments of the present application are implemented.
[0039] Compared with the prior art, the embodiments of the present application have the following beneficial effects:
[0040] The present application provides a compilation method, apparatus, device and storage medium, the method comprising: obtaining configuration information of a target code; the configuration information is used to characterize the compilation mode corresponding to the target code; when the compilation mode corresponding to the target code is bytecode parsing, rewriting the function called by the target code; calling the bytecode corresponding to the target code according to the function called by the rewritten target code; and compiling the target code through the bytecode. In an embodiment of the present application, for a code whose compilation mode is bytecode parsing, calling the bytecode corresponding to the target code according to the function called by the rewritten target code, the target code can be compiled through the bytecode; thus, the developer does not need to set the compilation mode additionally, which reduces the workload of the developer and also reduces the code compilation time. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] In order to more clearly illustrate the scheme in the present application, a brief introduction is given below to the drawings required for use in the description of the embodiments of the present application. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0042] Figure 1 is an exemplary system architecture diagram to which the present application may be applied;
[0043] Figure 2 is a flowchart of the compilation method provided in an embodiment of the present application;
[0044] Figure 3 is an application flow chart of the compilation method provided in the embodiment of the present application;
[0045] Figure 4 is a schematic diagram of the structure of an embodiment of a compiling device provided in an embodiment of the present application;
[0046] Figure 5 It is a basic structural block diagram of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0047] The compilation method provided in the embodiment of the present application is applied to the compilation device. Unless otherwise defined, all technical and scientific terms used in this article have the same meaning as those generally understood by technicians in the technical field of this application; the terms used in the specification of the application herein are only for the purpose of describing specific embodiments and are not intended to limit this application; the terms "including" and "having" in the specification and claims of this application and the above-mentioned drawings and any variations thereof are intended to cover non-exclusive inclusions. The terms "first", "second", etc. in the specification and claims of this application or the above-mentioned drawings are used to distinguish different objects, not to describe a specific order.
[0048] Reference to "embodiments" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.
[0049] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the accompanying drawings.
[0050] like Figure 1As shown, the system architecture 100 may include terminal devices 101, 102, 103, a network 104 and a server 105. The network 104 is used to provide a medium for communication links between the terminal devices 101, 102, 103 and the server 105. The network 104 may include various connection types, such as wired, wireless communication links or optical fiber cables, etc.
[0051] Users can use terminal devices 101, 102, 103 to interact with server 105 through network 104 to receive or send messages, etc. Various communication client applications can be installed on terminal devices 101, 102, 103, such as web browser applications, shopping applications, search applications, instant messaging tools, email clients, social online platform software, etc.
[0052] Terminal devices 101, 102, 103 can be various electronic devices with display screens and supporting web browsing, including but not limited to smart phones, tablet computers, e-book readers, MP3 players (Moving Picture Experts Group Audio Layer III), MP4 (Moving Picture Experts Group Audio Layer IV) players, laptop computers, desktop computers, etc.
[0053] The server 105 may be a server that provides various services, such as a background server that provides support for web pages displayed on the terminal devices 101 , 102 , and 103 .
[0054] It should be noted that the compilation method provided in the embodiment of the present application is generally executed by a server / terminal device, and accordingly, the compilation device is generally arranged in the server / terminal device.
[0055] It should be understood that Figure 1 The number of terminal devices, networks and servers in the embodiment is only for illustration. Any number of terminal devices, networks and servers may be provided according to implementation requirements.
[0056] Please refer to Figure 2 , shows a flow chart of an embodiment of the compilation method proposed in the present application. The embodiment of the present application can acquire and process relevant data based on artificial intelligence technology.
[0057] The compilation method provided in the embodiment of the present application comprises the following steps:
[0058] S210, obtaining configuration information of the target code.
[0059] During the target code compilation process, the target code and the configuration information of the target code are obtained.
[0060] The above configuration information is used to characterize the compilation mode corresponding to the target code. It should be understood that the compilation mode corresponding to the target code includes bytecode parsing and machine code parsing.
[0061] S220, when the compilation mode corresponding to the target code is bytecode parsing, rewrite the function called by the target code.
[0062] Since the Android system generally turns on the inline optimization function by default, when the inline optimization function is turned on, the code is parsed using machine code. Therefore, when the compilation mode corresponding to the target code is bytecode parsing, the code can be parsed using bytecode by rewriting the function called by the target code.
[0063] S230, calling the bytecode corresponding to the target code according to the function called by the rewritten target code.
[0064] S240, compile the target code through the bytecode.
[0065] In this step, after the function called by the target code is rewritten, the bytecode corresponding to the target code is called according to the function called by the rewritten target code, and then the target code is compiled through the bytecode.
[0066] In an embodiment of the present application, for codes whose compilation mode is bytecode parsing, the bytecode corresponding to the target code is called according to the function called by the rewritten target code, and the target code can be compiled through the bytecode; thereby, there is no need for developers to set additional compilation methods, which reduces the workload of developers and also reduces the code compilation time.
[0067] Optionally, rewriting the function called by the target code includes:
[0068] Parsing the configuration information of the target code to obtain a function call address associated with the target code;
[0069] According to the function call address associated with the target code, determining whether the calling function corresponding to the target code is an entry function;
[0070] If the calling function corresponding to the target code is an entry function, modify the entry function to a replacement function;
[0071] The replacement function is determined as the function called by the rewritten target code.
[0072] In this embodiment, the configuration information of the target code is first parsed to obtain the function call address associated with the marked code, and then according to the function call address associated with the target code, it is determined whether the calling function corresponding to the target code is an entry function. The return value after the entry function is executed indicates that inline optimization is enabled.
[0073] If the calling function corresponding to the target code is an entry function, an inline environment rewrite is required, that is, the entry function is modified to a replacement function, and then the replacement function is determined as the function called by the rewritten target code. The return value after the replacement function is executed indicates that the inline optimization is turned off.
[0074] In this embodiment, the purpose of disabling inline optimization is achieved by modifying the entry function into a replacement function, and in the subsequent code compilation process, machine code is not used for compilation.
[0075] Optionally, judging whether the calling function corresponding to the target code is an entry function according to the function calling address associated with the target code includes:
[0076] In a preset connection register, query the function call address to obtain the calling function corresponding to the target code;
[0077] Determine whether the calling function corresponding to the target code is an entry function.
[0078] In this embodiment, an LR register is pre-set, and the LR register stores a calling function, wherein the LR register is also called a connection register.
[0079] In this embodiment, after obtaining the function call address, the function call address is input into the connection register to obtain the calling function corresponding to the target code, and then determine whether the calling function corresponding to the target code is an entry function. Optionally, it is possible to determine whether the calling function is an entry function by the format of the obtained function.
[0080] Optionally, after determining whether the calling function corresponding to the target code is an entry function, the method further includes:
[0081] When the calling function corresponding to the target code is not an entry function, the configuration information of the target code is reparsed to obtain the function calling address associated with the target code.
[0082] In this embodiment, if the calling function corresponding to the target code is not an entry function, indicating that the calling function is wrong, the configuration information of the target code is re-parsed to obtain the function calling address associated with the target code, and then the calling function is re-acquired according to the new function calling address.
[0083] Optionally, after determining the replacement function as the function called by the rewritten target code, the method further includes:
[0084] In a preset connection register, query the function call address to obtain the calling function corresponding to the target code;
[0085] If the calling function corresponding to the target code is the replacement function, the steps are performed: calling the bytecode corresponding to the target code according to the function called by the rewritten target code;
[0086] If the calling function corresponding to the target code is the entry function, a warning message is issued.
[0087] It should be noted that the pre-set connection register also stores bytecodes.
[0088] In this embodiment, the function call address is input into the connection register for query to obtain the calling function corresponding to the target code. Then it is determined whether the calling function is a replacement function; if the calling function corresponding to the target code is a replacement function, it means that the function called by the target code is rewritten successfully, and the subsequent steps are executed; if the calling function corresponding to the target code is an entry function, it means that the function called by the target code fails to be rewritten, and a warning message is sent to the Android system to remind the developer to repair the system.
[0089] In this embodiment, by querying the function call address in the connection register, it is determined whether the function called by the target code is rewritten successfully, thereby ensuring smooth compilation of the code.
[0090] Optionally, calling the bytecode corresponding to the target code according to the function called by the rewritten target code includes:
[0091] Obtaining a bytecode address through a function called by the rewritten target code;
[0092] The bytecode corresponding to the target code is obtained through the bytecode address.
[0093] In this embodiment, after rewriting the function called by the target code, the rewritten function can be called to obtain the bytecode address. Optionally, the bytecode address can be queried in the connection register to obtain the bytecode corresponding to the target code through the bytecode address.
[0094] Optionally, after obtaining the configuration information of the target code, the method further includes:
[0095] When the compilation mode corresponding to the target code is machine code parsing, obtaining the machine code corresponding to the target code;
[0096] The target code is compiled by the machine code.
[0097] In this embodiment, when the compilation mode corresponding to the target code is machine code analysis, it means that the Android system needs to enable the inline optimization function, then the machine code corresponding to the target code is directly obtained, and the target code is compiled by the machine code.
[0098] It should be understood that the Android system pre-stores a mapping relationship between code identifiers and machine codes, so as to determine the machine code corresponding to the target code through the code identifier of the target code.
[0099] To understand the overall technical solution, please refer to Figure 3 , obtain the configuration information of the target code; if the compilation mode corresponding to the target code is bytecode parsing, determine the function call address associated with the target code; determine whether the calling function corresponding to the target code is an entry function; if so, determine the replacement function as the function called by the rewritten target code; and call the bytecode corresponding to the target code to compile the target code. If not, reparse the configuration information of the target code.
[0100] If the compilation mode corresponding to the target code is machine code analysis, the machine code corresponding to the target code is obtained; and the target code is compiled using the machine code.
[0101] See also Figure 4 , an embodiment of the present application provides a compiling device 400, the compiling device 400 comprising:
[0102] A first acquisition module 410 is used to acquire configuration information of a target code; the configuration information is used to characterize a compilation mode corresponding to the target code;
[0103] A rewriting module 420, configured to rewrite the function called by the target code when the compilation mode corresponding to the target code is bytecode parsing;
[0104] A first calling module 430, configured to call the bytecode corresponding to the target code according to the function called by the rewritten target code;
[0105] The first compiling module 440 is used to compile the target code through the bytecode.
[0106] Optionally, the rewriting module 420 is specifically configured to:
[0107] Parsing the configuration information of the target code to obtain a function call address associated with the target code;
[0108] According to the function call address associated with the target code, determining whether the calling function corresponding to the target code is an entry function;
[0109] If the calling function corresponding to the target code is an entry function, modify the entry function to a replacement function;
[0110] The replacement function is determined as the function called by the rewritten target code.
[0111] Optionally, the rewriting module 420 is further specifically configured to:
[0112] In a preset connection register, query the function call address to obtain the calling function corresponding to the target code;
[0113] Determine whether the calling function corresponding to the target code is an entry function.
[0114] Optionally, the compiling device 400 further includes:
[0115] The parsing module is used to reparse the configuration information of the target code when the calling function corresponding to the target code is not an entry function, so as to obtain the function calling address associated with the target code.
[0116] Optionally, the compiling device 400 further includes:
[0117] A query module, used to query the function call address in a preset connection register to obtain a call function corresponding to the target code;
[0118] A second calling module is used for executing the steps of: calling the bytecode corresponding to the target code according to the function called by the rewritten target code if the calling function corresponding to the target code is the replacement function;
[0119] The warning module is used to issue a warning message if the calling function corresponding to the target code is the entry function.
[0120] Optionally, the first calling module 430 is specifically configured to:
[0121] Obtaining a bytecode address through a function called by the rewritten target code;
[0122] The bytecode corresponding to the target code is obtained through the bytecode address.
[0123] Optionally, the compiling device 400 further includes:
[0124] A second acquisition module, configured to acquire a machine code corresponding to the target code when the compilation mode corresponding to the target code is machine code parsing;
[0125] The second compiling module is used to compile the target code through the machine code.
[0126] To solve the above technical problems, the present application also provides a computer device. Figure 5 , Figure 5 This is a basic structural block diagram of the computer device in this embodiment.
[0127] The computer device 5 includes a memory 51, a processor 52, and a network interface 53 that are interconnected through a system bus. It should be noted that the figure only shows a computer device 5 with components 51-53, but it should be understood that it is not required to implement all the components shown, and more or fewer components can be implemented instead. Among them, those skilled in the art can understand that the computer device here is a device that can automatically perform numerical calculations and / or information processing according to pre-set or stored instructions, and its hardware includes but is not limited to microprocessors, application specific integrated circuits (Application Specific Integrated Circuit, ASIC), programmable gate arrays (Field-Programmable Gate Array, FPGA), digital processors (Digital Signal Processor, DSP), embedded devices, etc.
[0128] The computer device may be a computing device such as a desktop computer, a notebook, a PDA, a cloud server, etc. The computer device may interact with a user through a keyboard, a mouse, a remote controller, a touch pad, or a voice control device.
[0129] The memory 51 includes at least one type of readable storage medium, and the readable storage medium includes flash memory, hard disk, multimedia card, card-type memory (for example, SD or DX memory, etc.), random access memory (RAM), static random access memory (SRAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), programmable read-only memory (PROM), magnetic memory, disk, optical disk, etc. In some embodiments, the memory 51 can be an internal storage unit of the computer device 5, such as a hard disk or memory of the computer device 5. In other embodiments, the memory 51 can also be an external storage device of the computer device 5, such as a plug-in hard disk equipped on the computer device 5, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, a flash card (FlashCard), etc. Of course, the memory 51 can also include both the internal storage unit of the computer device 5 and its external storage device. In this embodiment, the memory 51 is generally used to store the operating system and various application software installed on the computer device 5, such as the program code of the compilation method, etc. In addition, the memory 51 can also be used to temporarily store various types of data that have been output or are to be output.
[0130] The processor 52 may be a central processing unit (CPU), a controller, a microcontroller, a microprocessor, or other data processing chips in some embodiments. The processor 52 is generally used to control the overall operation of the computer device 5. In this embodiment, the processor 52 is used to run the program code stored in the memory 51 or process data, such as running the program code of the compiling method.
[0131] The network interface 53 may include a wireless network interface or a wired network interface. The network interface 53 is generally used to establish a communication connection between the computer device 5 and other electronic devices.
[0132] The present application also provides another implementation, namely, providing a computer-readable storage medium, wherein the computer-readable storage medium stores the compiler program, and the compiler program can be executed by at least one processor so that the at least one processor performs the steps of the compilation method as described above.
[0133] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware online platform, and of course, by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), and includes a number of instructions for a terminal device (which can be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in each embodiment of the present application.
[0134] The present application can be used in many general or special computer system environments or configurations. For example: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments including any of the above systems or devices, etc. The present application can be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. The present application can also be practiced in distributed computing environments, in which tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules can be located in local and remote computer storage media including storage devices.
[0135] Obviously, the embodiments described above are only some embodiments of the present application, rather than all embodiments. The preferred embodiments of the present application are given in the accompanying drawings, but they do not limit the patent scope of the present application. The present application can be implemented in many different forms. On the contrary, the purpose of providing these embodiments is to make the understanding of the disclosure of the present application more thorough and comprehensive. Although the present application is described in detail with reference to the aforementioned embodiments, for those skilled in the art, it is still possible to modify the technical solutions recorded in the aforementioned specific implementation methods, or to perform equivalent replacement of some of the technical features therein. Any equivalent structure made using the contents of the specification and drawings of this application, directly or indirectly used in other related technical fields, is similarly within the scope of patent protection of this application.
Claims
1. A compiling method, characterized in that: The method comprises: Obtaining configuration information of the target code; the configuration information is used to characterize the compilation mode corresponding to the target code; When the compilation mode corresponding to the target code is bytecode parsing, rewriting the function called by the target code; Calling the bytecode corresponding to the target code according to the function called by the rewritten target code; The target code is compiled by the bytecode.
2. The method according to claim 1, characterized in that The function called by the target code is rewritten, comprising: Parsing the configuration information of the target code to obtain a function call address associated with the target code; According to the function call address associated with the target code, determining whether the calling function corresponding to the target code is an entry function; If the calling function corresponding to the target code is an entry function, modify the entry function to a replacement function; The replacement function is determined as the function called by the rewritten target code.
3. The method according to claim 2, characterized in that The determining, according to the function call address associated with the target code, whether the calling function corresponding to the target code is an entry function comprises: In a preset connection register, query the function call address to obtain the calling function corresponding to the target code; Determine whether the calling function corresponding to the target code is an entry function.
4. The method according to claim 2, characterized in that: After determining whether the calling function corresponding to the target code is an entry function, the method further includes: When the calling function corresponding to the target code is not an entry function, the configuration information of the target code is reparsed to obtain the function calling address associated with the target code.
5. The method according to claim 2, characterized in that: After determining the replacement function as the function called by the rewritten target code, the method further includes: In a preset connection register, query the function call address to obtain the calling function corresponding to the target code; If the calling function corresponding to the target code is the replacement function, the steps are performed: calling the bytecode corresponding to the target code according to the function called by the rewritten target code; If the calling function corresponding to the target code is the entry function, a warning message is issued.
6. The method according to claim 1, characterized in that The function called according to the rewritten target code, calling the bytecode corresponding to the target code, comprises: Obtaining a bytecode address through a function called by the rewritten target code; The bytecode corresponding to the target code is obtained through the bytecode address.
7. The method according to any one of claims 1 to 6, characterized in that After obtaining the configuration information of the target code, the method further includes: When the compilation mode corresponding to the target code is machine code parsing, obtaining the machine code corresponding to the target code; The target code is compiled by the machine code.
8. A compiling device, characterized in that: include: A first acquisition module is used to acquire configuration information of the target code; The configuration information is used to characterize the compilation mode corresponding to the target code; A rewriting module, used for rewriting the function called by the target code when the compilation mode corresponding to the target code is bytecode parsing; A first calling module, used for calling the bytecode corresponding to the target code according to the function called by the rewritten target code; The first compiling module is used to compile the target code through the bytecode.
9. A computer device, characterized in that: The method comprises a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the steps of the compiling method according to any one of claims 1 to 7 are implemented.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the compiling method according to any one of claims 1 to 7 are implemented.