Assembler and Compiler Properties

These properties are applicable to C and assembly code source files.

Property Description
Additional Assembler Options Additional command line options to be supplied to the assembler.
Additional Compiler Options Additional command line options to be supplied to the compiler.
ARM Architecture Specifies the versions of the ARM or THUMB instruction set to generate code for and the library variant the linker should use. The options are v3, v4T, v5T, v5TE.
ARM/THUMB interworking Specifies that the code generated can be called either from ARM or THUMB code and the library variant the linker should use.
Endian Specifies the endianness to build for. Note that the value of this property at project level will be used to automatically set the Endian target property when a project is downloaded or attached to.
Enforce ANSI Checking Enable additional checking to ensure programs conform to the ANSI-C99 standard.
Instruction Set Specifies the instruction set the compiler should generate code for. The options are ARM or THUMB.
Long Calls Specifies whether function calls are made using absolute addresses.
Object File Name Specifies the name of the object file produced by the compiler/assembler. This property will have macro expansion applied to it.
Optimization Level Specifies the optimization level to use for compliation.

External Build Properties

These properties are applicable to Externally Built Executable project types.

Property Description
Build Command The command line that will build the executable.
Clean Command The command line that will clean the executable.
Executable File The name of the externally built executable file. This property will have macro expansion applied to it.
Load Address The address to load the file at. This is required if the load address isn't contained in the executable file - for example a binary file.
Load File Type The type of the executable file. The default is to detect the file type based on the file extension.

Folder Properties

These properties are applicable to project folders.

Property Description
Filter A list of file extensions that are matched when a file is added to the project.

Build Properties

These properties are applicable to a range of project types.

Property Description
Build Quietly Suppress the display of the startup banners and information messages.
Enable Unused Symbol Removal If this option is set then any unreferenced symbols will be removed from your program.
Exclude From Build Specifies whether or not to exclude the project/file from the build.
File Type Use this property to change the file type of the selected file. This can be used to be able to compile or assemble a file that has no recognised file type.
Include Debug Information Specifies whether symbolic debug information is generated.
Macros Defines macro values that are used for filename generation
Intermediate Directory Specifies a relative path from the project directory to the intermediate file directory. This property will have macro expansion applied to it.
Optimize Output Specifies whether the application should be optimized for size and speed.
Output Directory Specifies a relative path from the project directory to the output file directory. This property will have macro expansion applied to it.
Project Directory Specifies the project directory. This can be either relative to the solution directory (recommended) or can be an absolute directory.
Project Type Specifies the type of project to build.
Suppress Warnings Specifies whether the display of warning messages should be suppressed.
Target Processor Select a set of target specific options based on the target processor.
Treat Warnings as Errors Specifies whether warning messages should be treated as errors.

Preprocessor Options

These properties are applicable to C and assembly code source files.

Property Description
Ignore Includes If set to Yes, the System Include Directories and User Include Directories properties are ignored.
Preprocessor Definitions Specifies one or more preprocessor definitions.
Preprocessor Undefinitions Specifies one or more preprocessor undefinitions.
System Include Directories Specifies the system include path. This property will have macro expansion applied to it.
Undefine All Preprocessor Definitions If set to Yes, no standard preprocessor definitions will be defined.
User Include Directories Specifies the user include path. This property will have macro expansion applied to it.

Section Properties

These properties are applicable to C and assembly code source files.

Property Description
Code Section Name Specifies the default section name to use for the program code section.
Constant Section Name Specifies the default section name to use for the read-only constant section.
Data Section Name Specifies the default section name to use for the initialised, writable data section.
Zeroed Section Name Specifies the default section name to use for the zero-initialised, writable data section.

Input/Output Properties

These properties define what the printf/scanf support is to be used.

Property Description
Floating Point I/O Supported Specifies whether the version of the printf and scanf functions that support floating point numbers should be linked into the application.
Integer I/O Support Specifies the largest integer type supported by the printf and scanf function group.
Scanf Classes Supported Enables support for %[...] and %[^...] character class matching in the scanf functions.

Staging Properties

These properties are applicable to Staging project types.

Property Description
Output File Path Specifies the name the file will be copied to. This property will have macro expansion applied to it.
Set Readonly Specifies that the output file will have it's permissions set to readonly.
Stage Command Specifies the command be used to do the staging operation. This property will have macro expansion applied to it.

Combining Properties

These properties are applicable to Combining project types.

Property Description
Output File Path Specifies the name the file will be copied to. This property will have macro expansion applied to it.
Set Readonly Specifies that the output file will have it's permissions set to readonly.
Combine Command Specifies the command be used to do the combining operation. This property will have macro expansion applied to it.

Library Properties

These properties are applicable to Library project types.

Property Description
Library File Name Specifies the name of the output file produced by the librarian. This property will have macro expansion applied to it.

Linker Properties

These properties are applicable to Executable project types.

Property Description
Additional Input Files Additional object and library files to be supplied to the linker. This property will have macro expansion applied to it.
Additional Linker Options Additional command line options to be supplied to the linker.
Additional Output Format Specifies an additional file format to be generated by the linker. For example an s-record output may be generated as well as the .hzx file.
Check For Memory Segment Overflow Specifies that the linker should check whether program sections fit into the memory segments they have been placed in.
Entry Point Specifies the entry point of the program. This may be a symbol or an absolute address.
Executable File Name Specifies the name of the output file produced by the linker.
Generate Map File Specifies whether or not a linker map file is generated.
Include Standard Libraries Specifies whether the standard libraries should be linked into the application.
Include Startup Code Specifies whether the standard C startup code is linked into the application.
Library Instruction Set Specifies the library variant the linker should use. The options are ARM or THUMB.
Memory Map File The name of the file containing the memory map description. This property will have macro expansion applied to it. Note that a memory map file in the project will be used in preference to this setting.
Post Build Command Specifies a command to run after the link command has executed.
Section Placement File The name of the file containing the section placement description. This property will have macro expansion applied to it. Note that a section placement file in the project will be used in preference to this setting.
Use Multi Threaded Libraries Specifies that multi-threaded (re-entrant) versions of the libraries should be linked in.

Target Properties

These properties are applicable to "executable" project types.

Property Description
Attach Script The script that is executed when the debugger attaches to the target.
Reset Script The script that is executed when the target is reset. This script is typically responsible for resetting the target and configuring memory.
Run Script The script that is executed when the target is released into run state. This script is typically responsible for re-enabling caches previously disabled by the stop script.
Stop Script The script that is executed when the target enters debug state. This script is typically responsible for disabling or flushing caches.
ARM Debug Interface Specifies whether the target's debug interface is ARM7TDI, ARM7DI, ARM9TDMI or XScale compliant.
First Loader Program Section The name of the loader's first program section. This value is used to tell CrossStudio the area of memory occupied by the loader in order to prevent it from being overwritten during download. This parameter is only required if the program being downloaded overwrites the loader.
Last Loader Program Section The name of the loader's last program section. This parameter is only required if the program section specified by First Loader Program Section is not the loader's only program section.
Loader File Path Specifies the file path of the loader program to use. This is typically used by targets that support FLASH download. It is not possible to download programs to FLASH using only the ARM's debug interface. A loader program therefore has to be downloaded and run from RAM prior to the download of the main application.
Loader File Type Specifies the communication mechanism used to communicate with the loader.
Loader Parameter This field allows a parameter to be passed to the loader. The parameter is loader specific.
Reset After Download Specifies whether the target should be reset after a download using a loader.
Stop CPU Using DBGRQ Specifies whether the CPU should be stopped by asserting DBGRQ rather than by using breakpoints.