Previous Topic Next topic Print topic


Building COBOL applications

To build an application, you need to compile its programs and link them to a run-time system. You use a build configuration to define how to do this.

The Micro Focus Compiler goes through the following phases:

Building native COBOL applications

When building native COBOL applications the Compiler first checks the program for syntax errors. Then, it generates native machine code. Finally, the linker links the native machine code into an executable (either an .exe or a .dll).

  1. The check phase - the Compiler checks the program's syntax and creates files to use for testing and debugging. The check phase creates a dictionary file for use with the Debugger and, if you are building an INT/GNT project or have set the project output type to INT/GNT, it can produce an .int file.
  2. The generate phase - during the generate phase, the Compiler creates native machine code from the intermediate code produced during the check phase, and produces either an industry-standard .obj file or, if you are building an INT/GNT project or have set the project output type to INT/GNT, it can produce a Micro Focus .gnt file.

    You can execute .int and .gnt code directly with the run-time system. You cannot execute the object code file. You must link it with the appropriate run-time system to create an executable file.

  3. The linking phase - during the link phase, the code is linked to the run-time system and creates an executable file - an .exe, .dll. You specify how to link your applications within the IDE and on the COBOL Link page in your project's properties.
Note: By default, if your application is set to produce INT/GNT output, it compiles to .int code in the Debug configuration, and to .gnt in the Release configuration.

Building managed COBOL applications

When building .NET Managed COBOL applications the Compiler compiles your code to Microsoft Intermediate Language (IL) source file which is stored in an assembly file - either an .exe or a .dll.

Previous Topic Next topic Print topic