Compiling COBOL code

Before you can run a program, you have to compile the source code.

By default, your project is built automatically, every time you save the project. This ensures that whenever a resource changes, an incremental build starts and all resources modified since the last build are rebuilt. You can force a manual build too, by cleaning the project; see Compiling in the IDE for more information.

You can configure the compilation using the following techniques:

If the source code to be compiled contains characters beyond the standard 7-bit ASCII character set (for example, accented characters or characters belonging to multi-byte character sets), you must ensure that the locale has been set correctly, to match the source encoding of these characters. On UNIX, this means setting LANG, LC_CTYPE, or LC_ALL appropriately; each of these variables takes precedence over the former. On Windows, this means setting the system locale in the 'Region and Language' section of Control Panel.

When you compile, the Compiler can produce executable code directly or object code. Object code is not executable, and has to be linked to the run-time system to create an executable file. If your project is set to build to .int and .gnt, by default the Compiler produces .int code during its syntax checking phase, and then it can produce .gnt code during the generating phase. You can modify this behavior from the project or the file properties.

Compiling in the IDE

By default, Eclipse is configured to build projects automatically whenever you save a file or change the properties of a file, folder, build configuration or project. You can turn off automatic building from Window > Preferences > General > Workspace and unchecking Build automatically.

If automatic builds are not enabled, you can build a project at any time by selecting the project in the Application Explorer view and clicking Project and then Build Project to build the currently selected project, Build All to build all projects in the current workspace, or Build Working Set to build a subset of the projects in the workspace.

Important: For applications that use a RDBMS, you might need to set some additional directives in your build configuration.

Compiling from the command line

Using the command line, you can compile without linking using the cobol command (Windows), or compile and link your program in one step using the cbllink utility (Windows) or cob (UNIX) command.

You can either specify all the information required on the command line, or use the Compiler prompts.

See Command line reference for more information.

Errors reported during a build

The Compiler records errors with severity levels ranging from information messages to fatal errors which stop the Compiler working. Eclipse reports any errors found in your sources in the Problems and in the Console views.

To navigate to the line of code that generates an error, double-click on the error in the Problems view that has a line number.

Alternatively, follow the link for the source file that has the error in the Console view. In most scenarios, if the error occurred in copybook, following the link in the Console view will open the copybook in context of the source file that references it. If the copybook is referenced by a remote standalone source file, however, then it will not be opened in context.

A limit of 10,000 build errors is set for this product. If this number is reached, Eclipse aborts the build to prevent the build from taking up too much memory on the machine, and as a consequence, some of the source files might not have been compiled. To compile your application, you'll need to fix the issues that are reported and then rebuild the entire project.