## Active Build Configuration

Use the Active Configuration option in the Carbide Build Configurations panel to specify the build target. Since a project can contain one or more build targets, the active configuration defines which build configuration to use when the project is run or debugged. A launch configuration consists of the following:

- a project
- a build configuration - a project level configuration that includes an SDK and any related files required to compile and build the project

Build configurations are defined when the project is created. A project can have any number of build configurations and more can be added as necessary. Each build configuration can have its own combination of tool settings to precisely control how it is defined and built. Build configurations are maintained in the project Properties window in the Carbide Build Configurations panel. To open the panel, select a project in the Symbian Project Navigator or Project Explorer view and select Project > Properties or right-click and select Properties.

You can select a build configuration in the Active Configuration dropdown list or use the Project > Active Configuration menu option to set which build configuration to launch when running or debugging a program. The currently selected project can be launched by clicking the Run () or Debug () control on the tool bar to launch the project with the currently active build configuration. When no project is selected the last project debugged will be launched.

If no launch configuration is present in the project, one is created on initial launch. Subsequent launches of the project will use either the last launch configuration or if more than one launch configuration exists, it uses the most correct one.

NOTE The Carbide Run and Debug buttons are shaded in blue to indicate their behavior differs from the standard Eclipse behavior.

##### Table 1 Carbide Build Configuration items

Item | Explanation
--- | ---
Active Configuration | The Active Configuration drop down list allows you to select a configuration that is currently available for the selected project. The entries in the related sub-panes will change according to the selected configuration. The Configuration name consists of a target name and an SDK identifier in brackets.
Manage... | Click the Manage... button to add a new SDK/Configuration or remove an existing configuration.

##### Build Configuration Naming

When the Carbide.c++ IDE creates an build configuration it uses a standard naming convention to make it easy to identify. For example, HelloCarbide S60 5.0 Emulator Debug is a typical configuration name. The default name follows the form of:

- <Phone|Emulator> The build target (Emulator, Phone, etc.)
- <Debug|Release> Debug (final file contains debug symbols) or Release version
- <platform> Platform on which you are building
- <sdk ID from devices.xml> The SDK and version used by the build configurations (S60, etc.)

You can use the Debug window to edit the default build configuration names.

##### Other references

- Carbide Build Configurations
- Setting an Active Configuration
- Creating Launch Configurations
- Adding/Removing Build Configurations