SEGGER Embedded Studio builds your application using the resources and build rules it finds in your solution.

When SEGGER Embedded Studio builds your application, it tries to avoid building files that have not changed since they were last built. It does this by comparing the modification dates of the generated files with the modification dates of the dependent files together with the modification dates of the project options that pertain to the build. But if you are copying files, sometimes the modification dates may not be updated when the file is copied—in this instance, it is wise to use the Rebuild command rather than the Build command.

You can see the build rationale SEGGER Embedded Studio currently is using by setting the Environment Options > Building > Show Build Information environment option. To see the build commands themselves, set the Environment Options > Building > Echo Build Command environment option.

You may have a solution that contains several interdependent projects. Typically, you might have several executable projects and some library projects. The Project Dependencies dialog specifies the dependencies between projects and to see the effect of those dependencies on the solution build order. Note that dependencies can be set on a per-configuration basis, but the default is for dependencies to be defined in the Common configuration.

You will also notice that a new folder titled Dependencies has appeared in the Project Explorer. This folder contains the list of newly generated files and the files from which they were generated. To see if one of files can be decoded and displayed in the editor, right-click the file to see if the View command is available on the shortcut menu.

If you have the Symbols window open, it will be updated with the symbol and section information of all executable files built in the solution.

To generalize your builds, you can define macro values that are substituted when the project options are used. These macro values can be defined globally at the solution and project level, and can be defined on a per-configuration basis.

The combination of configurations, project options with inheritance, dependencies, and macros provides a very powerful build-management system. However, such systems can become complicated. To understand the implications of changing build settings, right-click a node in the Project Explorer and select Options to view a dialog that shows which macros and project options apply to that project node.

To build all projects in the solution:
  1. Choose Build > Build Solution.

—or—

  1. Right-click the solution in the Project Explorer window.
  2. Choose Build from the shortcut menu.
To build a single project:
  1. Select the required project in the Project Explorer.
  2. Choose Build > Build.

—or—

  1. Right-click the project in the Project Explorer.
  2. Choose Build.
To compile a single file:
  1. In the Project Explorer, click to select the source file to compile.
  2. Choose Build > Compile.

—or—

  1. In the Project Explorer, right-click the source file to compile.
  2. Choose Compile from the shortcut menu.

Correcting errors after building

The results of a build are recorded in a Build Log that is displayed in the Output window. Errors are highlighted in red, warnings are highlighted in yellow. Double-clicking an error, warning, or note will move the insertion point to the line of source code that triggered that log entry.

You can move forward and backward through errors using Search > Next Location and Search > Next Location.

When you build a single project in a single configuration, the Transcript will display the memory used by the application and a summary for each memory area.