Using Lycia tools to Build and Compile

Building Programs from Lycia Studio

Lycia 3 allows building/rebuilding 4gl programs and compiling single source files directly from LyciaStudio, from the context menu:

 

 

 

Build

Building means compiling and linking 4gl source files, converting .per forms into .fm2, and processing other sources. If any 4gl source file was not changed since the previous compilation, it will be skipped. Usually, building is used as it is faster to perform and there is no need to build the entire program each time a single line of a source code was changed.

 

Clean

Clean is used to clean the building results from the output folder of the current program.

 

Rebuild

Rebuilding means that all the files included in the program will be compiled and built regardless of whether they were recently changed. Thus, Rebuild triggers sequential operations of cleaning and building. Rebuild is reasonable only in certain cases, e.g. when the compiler versions get out of synchronization because it may cause unexpected problems at runtime.

 

Compile

Compile is used to compile the currently edited file.

Usually, 4gl developers choose to compile a single file when they need to quickly check it for errors (with the other source files still being edited).

 

Even though we use "build/clean/rebuild a program" here, all these operations can be applied

to a program, several selected programs, a project, and even to the workspace as a whole.

 

 

 

Building Programs from Command Line

With Lycia 3, 4gl programs can be built and compiled from the command line. The table below contains the command line tools which can be used for compiling purposes with their short descriptions. Click the name of the tools to go to its reference page and get more information.

 

qbuild

compiles projects or their elements created in LyciaStudio and located in the workspace

qfgl

compiles 4gl source files into a intermediate representation (IR) modules

qlink

links IR modules together

qform

compiles legacy form files

qrun

can be used to build native code (qrun --aot)