CrossStudio builds your application using the resources and build rules it finds in your solution.

When CrossStudio 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 properties 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 CrossStudio currently is using by setting the Environment Properties > Build Settings > Show Build Information property. To see the build commands themselves, set the Environment Properties > Build Settings Echo Build Command property.

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.

When CrossStudio builds projects, it uses the values set in the Properties window. To generalize your builds, you can define macro values that are substituted when the project properties are used. These macro values can be defined globally at the solution and project level, and can be defined on a per-configuration basis. You can view and update the macro values using Project > Macros.

The combination of configurations, properties 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 Properties to view a dialog that shows which macros and build steps apply to that project node.

To build all projects in the solution:
  1. Choose Build > Build Solution or press Shift+F7.

—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 press F7.

—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 press Ctrl+F7.

—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.