fglrun
The fglrun tool is the runtime system program that executes p-code programs.
Syntax
fglrun [options] program [argument [...]]
- options are described in Table 1.
- program is a .42r or .42m p-code program. This can be a simple base name, or a filename including the path to the program file.
- argument is an argument passed to the program
Options
Option | Description |
---|---|
-V or --version |
Display version information for the tool. |
-h or --help |
Displays options for the tool. Short help. |
-i { mbcs } |
Displays information.
|
-d |
Start in debug mode. See Integrated debugger for more details. |
-e
extfile[,...] |
Specify a C extension module to be loaded. This option can take a comma-separated list of extensions. |
-l |
Link p-code modules together, see Compiling source files. |
-o {
progname.42r
|
libname.42x
} |
Output file specification when using the
-l link option, it can be a 42r program or a 42x
library. |
-b |
Displays compiler version information of the module, see Compiling source files. |
-p |
Generate profiling information to stderr (UNIX™ only). See Program profiler. |
-M |
Display a memory usage diagnostic when program ends. See Check runtime system memory leaks. |
-m |
Check for memory leaks. If leaks are found, displays memory usage diagnostic and stops with status 1. See Check runtime system memory leaks. |
--java-option=option |
Passes Java runtime options when initializing the JNI interface. See Java Interface for more details. |
--print-imports |
Loads the specified modules and prints all IMPORT
FGL instructions used in each module. See Compiling source files. |
--start-guilog=logfile |
Log all GUI protocol exchange in a file. The GUI log file can
then be replayed with the --run-guilog option. If the log file contains a
%p placeholder, it is replaced by the current process id. |
--run-guilog=logfile |
Replays a GUI log created with
the --start-guilog option. |
--gui-listen=port |
Instructs the runtime system to listen to a TCP port for incoming GUI connections. For more details see Connecting with a front-end. |
--module-size |
Shows the amount of limited pcode size for a module. The next argument must be a .42m module. |
--merge-cov name.4gl
[name.42m.cov] |
Merges FGLCOV coverage data files with source files to produce a readable file name.4gl.cov module. If the .42m.cov file is not located beside the source file, you can specify the full path with the second optional file path. See Source code coverage. |
--program-size |
Shows the amount of limited pcode size for an entire program. The next argument must be a .42r program file. |
--trace |
Starts the program by printing function call stack trace with parameter and return values. For more details, see Execution trace. |
Usage
fglrun myprogram.42r -x 123
The program file must contain the MAIN
routine.
The arguments passed to the program can be queried with the arg_val() built-in function.
fglrun myprogram -x 123
- First fglrun tries to find the program file with the filename as provided in the command line. The filename can have a different extension than .42r or .42m.
- If the file is not found, a new search is done by adding the .42r extension.
- If the file is still not found, fglrun tries with the .42m extension.
- If the file is still not found, fglrun produces the error -4448.