Build Configuration Types (Compact 2013)

3/26/2014

During the development process, you can use Platform Builder to select one of four default build configurations for your project. You can create or select a different configuration at any time in the development process. The level of optimization in a configuration can be modified according to your needs, resulting in a type of configuration known as a custom configuration.

The following table shows the default configurations that you can select:

Build Configuration

Description

Debug

A debug configuration build produces a very large run-time image, which has full debugging enabled.

Checked

A checked configuration build produces an optimized run-time image (smaller in size), but still makes allowance for assertions and debug messages.

Note: A run-time image from a checked build becomes harder to debug because optimizations can lose information needed by the debugger.

Release

A release, or retail, configuration produces a smaller run-time image, which has limited debugging enabled.

Release configuration builds support OutputDebugMessage, and can be configured for debugging.

From the Project menu, select Properties, and then select the Build Options page. Then verify that both the Enable KITL and Enable Kernel Debugger check boxes are selected.

Ship

A ship configuration build produces the final optimized run-time image that will be provided to the customer, which has no debugging enabled.

When you switch between a release configuration and a custom configuration that has no debugging enabled, you should perform a clean rebuild of your project to ensure that binaries from previous configurations are removed. You do not need to switch the active configuration for your entire project to selectively build a few executable files for debugging purposes in a release configuration.

The following procedure describes how you can selectively build a few executable files for debugging purposes in a release configuration:

How to build an executable for debugging purposes in a release configuration

  1. Build run-time images based on release and debug configurations of your project.

  2. From the build release directory in the debug configuration, copy the executable (.exe) files that you want to debug into the build release directory of the release configuration.

  3. Run Makeimg.exe with the release configuration, which links the copied debug executable files into your run-time image. For more information, see Make Binary Image Tool (Makeimg.exe).

See Also

Reference

Build Tool (Build.exe)

Other Resources

Build System Command Line Tools