Please enable JavaScript to view this site.

Visual Studio Project Builder Help

Navigation: How to use Visual Studio Project Builder

Building, rebuilding, cleaning, and stopping builds

Scroll Prev Top Next More

The main task of Visual Studio Project Builder is the building of projects. That's what we're going to discuss in this topic.

 

 

Build Order

 

All projects added to a collection are sorted according to the build order settings.

 

However, you may wish to change the build order.

 

To change the build order you need the Build Order submenu on the Projects menu.

 

 Menu-ProjectsBuildOrder

 

Sort the projects by optimized build order, project name or project file path. Optimized build order sorts the projects so that as many dependencies as possible are satisfied before a project is built.

 

 Menu-ProjectsBuilderOrderSubmenu

 

 

Building, rebuilding and cleaning

 

There are three ways to build projects. You can build an individual project configuration, build all project configurations inside a project, and build all project configurations of all projects. We're going to cover these by dealing with the three different group operations rather than the three different tasks.

 

 

All Projects

 

Whether you are building, rebuilding or cleaning all projects, the basic behaviour is the same. You are shown a build progress dialog which overlays the main user interface. The user interface will update each project configuration's status as it is built (or rebuilt, or cleaned). At the same time the build progress dialog also keeps track of the state of the build for all project configurations.

 

 

 BuildProgressDialog

 

The image shows the following:

 

Name of solution (cvExample_VS10_0)

 

Name of project (cvexample_vs10_0.vcxproj) and the project configuration (Release Non Link ANSI|Win32)

 

The top coloured bar shows the progress of building this project configuration.

 

The bottom coloured bar shows the progress of building all the projects and project configurations.

 

The colours are defined by the colour settings.

 

Underneath this there are statistics about

how many project configurations are being built (1354)

how many have been build (41)

how many have compiler warnings (0)

how many failed with compiler errors (0)

how many failed with linker errors (0)

how many failed with solution errors (0)

 

An elapsed time indicator shows you how long this has been in progress. Not so useful for short builds, but for longer builds, knowing that a task took 4 hours 35 minutes to build 930 project configurations can be useful information for next time you come to do repeat that build (that's a half a day you can schedule to do something else without paying attention to the computer or having to start one solution after another has completed).

 

Lastly there are two buttons:

One stops all builds in progress.

The other one will pause a build (any build in progress will continue, but no new builds will be started) or un-pause any paused build.

 

Build All Projects

 

To build all projects, choose Build All from the Projects menu.

 

 Menu-ProjectsBuildAll

 

All project configurations in all projects will be built.

 

Rebuild All Projects

 

To rebuild all projects, choose Rebuild All from the Projects menu.

 

 Menu-ProjectsRebuildAll

 

All project configurations in all projects will be rebuilt.

 

Clean All Projects

 

To clean all projects, choose Clean All from the Projects menu.

 

 Menu-ProjectsCleanAll

 

All project configurations in all projects will be cleaned.

 

Selecting all Projects

 

To select all projects, choose Select All from the Projects menu.

 

 Menu-ProjectsSelectAll

 

All project configurations in all projects will be enabled.

 

Deselecting all Projects

 

To deselect all projects, choose Deselect All from the Projects menu.

 

 Menu-ProjectsDeselectAll

 

All project configurations in all projects will be disabled.

 

 

All Project Configurations

 

To build, rebuild or clean all project configurations of a project right click on any project configuration for that project. A context menu will be shown.

 

 ContextMenuProjectConfigurations

 

The first five options relate to all of a project's project configurations. Choose from options on the Build, Rebuild and Clean submenus, or Select All or Deselect All as appropriate.

 

To build all project configurations, choose the second option on the Build submenu.

 

 ContextMenu-Build-All-Configurations

 

To rebuild all project configurations, choose the second option on the Rebuild submenu.

 

 ContextMenu-Rebuild-All-Configurations

 

To clean all project configurations, choose the second option on the Clean submenu.

 

 ContextMenu-Clean-All-Configurations

 

To touch all files in the project, choose the first option on the Touch submenu.

 

 ContextMenu-Touch

 

Please note that the Build Progress dialog is not displayed. You will be able to see the progress of this project's project configurations building on the main user interface.

 

 

Individual Project Configuration

 

To build, rebuild or clean an individual project configuration right click on the project configuration. A context menu will be shown.

 

 ContextMenuProjectConfiguration

 

The first three items on the menu relate to individual project configurations. Choose Build, Rebuild or Clean as appropriate.

 

To build this project configurations, choose the first option on the Build submenu.

 

 ContextMenu-Build-this-configuration

 

To rebuild this project configurations, choose the first option on the Rebuild submenu.

 

 ContextMenu-Rebuild-this-configuration

 

To clean this project configurations, choose the first option on the Clean submenu.

 

 ContextMenu-Clean-this-configuration

 

 

Please note that the Build Progress dialog is not displayed. You will be able to see the progress of this project configuration's build on the main user interface.

 

 

Stopping a build

 

If you need to stop a build, choose Stop Build on the Projects menu.

 

 Menu-ProjectsStopBuild

 

All builds will be stopped.