Compiling

Top  Previous  Next

Conditional Compilation Symbols

To define a switch, or switches, for use with the COMPILE and OMIT compiler directives, type a list of valid Clarion labels separated by semicolons. Each label defines a separate switch.

For example, type 'Demo' in the entry field. The Project System will create a switch called Demo and turn it "on." Now you can use the switch in conditional COMPILE and OMIT statements within your source code. For example:

 

 

COMPILE('END COMPILE',DEMO=ON)

IF TODAY() > FirstRunDate + 30

 ReturnCode = MESSAGE('Beta period expired')

 RETURN

END

END COMPILE

 

 

You can also add new defines in the Conditional Compilation Symbols Dialog by pressing the ellipsis button to the right of the entry prompt.

 

 

Stack Size

To specify the stack size, type a value in Kilobytes in the Stack Size field.

Copy Referenced DLLs to Output Directory

This will copy the core dynamic linked libraries DLLs to the directory where the executable target is being created. The project’s Output Type must be set to EXE for this option to be executed. This means you no longer need to have different versions of Clarion on your environment path, thus allowing you to easily test with multiple versions of the same product. The redirection (RED) file is used to find DLLs when this check box is active.

 

The PATH of core DLLs is automatically added by the installer. The same is of course true for all earlier versions of Clarion. So unless you have the case where you are maintaining separate distinct versions of C7 (or C6 etc.) then you do not need to use this option.

The Project system uses the RED file to locate the DLLs. The standard RED file we ship has this entry in the Copy section;

 

[Copy]

-- Directories only used when copying dlls

*.dll = %BIN%;%ROOT%\Accessory\bin

 

Also. settings in a RED file found in the project directory take precedence over the base RED file settings.

Examples of files copied would be file driver DLLs, runtime library DLLs, and any other DLLs that you have referenced in the active project.

Debug Info

Specifies the level of debug capability, choose Off, Min, or Full from the drop down list.

Warning

Specifies if compiler generated warnings should be treated as warnings (default), as errors, or ignored.  Choose On for the default action to report the warning, or Err to treat warnings as errors, or Off to ignore and not report them.

Generate MAP File

Creates a map file, which contains information about segment sizes and public functions. The map file may be used with third party debuggers.

Add Line Number information to map file

Check this box to build line numbers into the object file. This is not necessary for the Clarion debugger, but may be helpful when using other debuggers.

Index out of range

Enables "array index larger than the array size" warnings at runtime.

Stack Overflow

Enables stack overflow warnings at runtime.