Code Composer Studio
C2000 Microcontroller Workshop - Programming Development Environment 2 - 9
CCSv6 Build Options – Compiler / Linker
Project options direct the code generation tools (i.e. compiler, assembler, linker) to create code
according to your system’s needs. When you create a new project, CCS creates two sets of build
options – called Configurations: one called Debug, the other Release (you might think of as
Optimize).
To make it easier to choose build options, CCS provides a graphical user interface (GUI) for the
various compiler and linker options. Here’s a sample of the configuration options.
CCSv6 Build Options – Compiler / Linker
Compiler
20 categories for code
generation tools
Controls many aspects of
the build process, such as:
Optimization level
Target device
Compiler / assembly / link
options
Linker
11 categories for linking
Specify various link
options
${PROJECT_ROOT}
specifies the current
project directory
There is a one-to-one relationship between the items in the text box on the main page and the GUI
check and drop-down box selections. Once you have mastered the various options, you can
probably find yourself just typing in the options.
There are many linker options but these four handle all of the basic needs.
• -o <filename> specifies the output (executable) filename.
• -m <filename> creates a map file. This file reports the linker’s results.
• -c tells the compiler to autoinitialize your global and static variables.
• -x tells the compiler to exhaustively read the libraries. Without this option libraries are
searched only once, and therefore backwards references may not be resolved.
To help make sense of the many compiler options, TI provides two default sets of options
(configurations) in each new project you create. The Release (optimized) configuration invokes
the optimizer with –o3 and disables source-level, symbolic debugging by omitting –g (which
disables some optimizations to enable debug).