qlink

 

qlink is used to link IR modules together.

 

Syntax:

 

qlink [options] file_name.file_extension

 

Possible options:

 

-? [ --usage ]

displays usage information

-V [ --version ]

shows the version of the linker

-v [ --verbose ]

produces verbose output (detailed compilation information)

-d [ --database-driver ] arg

sets database driver for compilation

--verify

verifies output

--errors arg (=default)

verifies function resolution

-o [ --output ] arg

determines the output file

-l [ --lib ] arg

links dynamic C libraries

-m [ --merge ]

merges the source files

 

Usage and examples:

 

To link 4gl files together, the following command must be called:

 

qlink -o x.4a a.4o b.4o c.4o

 

where a.4o, b.4o, and c.4o are files statically linked together to form the IR module x.4a.

 

If the following command is invoked:

 

qlink-ox.4aa.4ob.4o-libc.4o

 

a.4o and b.4o will be statically linked into x.4a, whereas c.4o will be dynamically linked to x.4a. Thus, x.4a  will contain two IR modules as well as a runner (necessary to execute x.4a directly by the operating system).

 

--verify is used to check for duplicated function declarations and for function calls for which functions are not defined. If omitted, the program will compile normally even if it includes duplicated functions or calls for missing functions. Otherwise, names and locations of duplicated functions will be reported, though this will not prevent the successful compilation. In both cases, duplicated or missing functions will produce a runtime error.

 

-d is only used for validation purposes: The compiled program can be run against any database server available, either by using qfgl -d, or by setting the LYCIA_DB_DRIVER environment variable.

 

 

Related articles:

Building Programs from Command Line