## Launch Configuration Overview

A launch configuration defines the operational settings used by the Carbide.c++ tools to launch and debug programs. A project must have at least one launch configuration, and can have as many as necessary. This enables you to develop and debug your project using various compilers (GCCE and RVCT) and different targets (emulator, on-device, and reference boards) as each launch configuration can be tailored to fit the intended target.

#### Creating a Launch Configuration

To create a default launch configuration for a project use the New Launch Configuration Wizard. Using this method ensures that you have a working launch configuration for the project. You can invoke the New Launch Configuration Wizard for projects lacking a launch configuration by selecting the Run > Debug (F11) or Run > Run (CTRL+F11) menu options, or clicking the Run () or Debug () icons in the toolbar. If a project already has a defined launch configuration, selecting the Run or Debug command calls the previously defined and last used launch configuration, bypassing the wizard entirely.

For emulator projects the wizard simply gathers the data it needs from the project and creates an emulator launch configuration and launches the emulator. For on-device targets, more information is required, so the wizard asks for the missing information it needs, creates the launch configuration, then downloads the executable to the device and launches it. Once the emulator or device is loaded with the executable, the debug session commences.

You can customize any project launch configuration afterward using the Debug dialog as necessary.

#### Available Launch Configurations

Launch configurations come in several varieties, each designed for a specific purpose. You must choose one at the very start of the New Launch Configuration Wizard, so knowing the differences between them is important. Currently, the types to choose from include:

- Symbian OS Device — used to run or debug applications or ROM code on a target device using CODA (Carbide On-device Debug Agent). CODA is an application that runs on reference boards and prototype phones and allows you to debug executables. The debugger will download files to the phone prior to launching.
- Symbian OS Device (Attach to Process) — used to debug processes running on a target device for which a symbol file is available. This is available only for CODA and stop mode debugging. This launch configuration is not available for emulator debugging. Stop mode and CODA can both attach to a process from the Symbian OS Data view.
- Symbian OS Device (Install SIS) — used to run or debug applications on a target device using CODA. CODA is an application that runs on released phones and allows you to debug your executables. The debugger will download a Symbian OS installation file to the phone and install it prior to launching.
- Symbian OS Emulator — used to run or debug executables on an emulator.
- Symbian OS Simulator — used to run or debug executables on a simulator.

#### Other references

- Creating Projects Overview
- New Launch Configuration Wizard
- Debug dialog