BuildConsole Command Line Interface
BuildConsole.exe, located in the IncrediBuild installation folder, is a console application that allows running distributed Visual Studio builds from the command line, scripts, and applications, or continuous integration management tools such as TFS.
BuildConsole can also be used to accelerate other build tools such as Make, using the /command directive. Further information can be found in the IncrediBuild for Make & Build Tools section.
You can run a distributed job that uses one of the interfaces from the IncrediBuild Interfaces extension package, using the IBConsole.exe command line interface. This interface is used to accelerate your custom tool, such as rendering, simulations, unit testing, QA, scripts, and more.
- Significant decrease in Visual Studio build time
- Does not require any code, project, or environmental changes
- Friendly and easy-to-use graphical interface for Visual Studio, with a simple visual build process representation
- Does not require any installations or VM on remote machines (with the exception of the IncrediBuild agent)
- Can be further customized to accelerate other tools that are part of the build process
The following syntax is used to operate BuildConsole.exe:
BuildConsole <Target> [Options]
Where <Target> can be any of the following:
- A path to a Visual Studio .NET/2005/2008/2010/2012/2013/2015 solution (.sln file)
- A path to a Visual Studio .NET/2005/2008/2010/2012/2013/2015 project (.vcproj/.icproj/.vcxproj file)
- A path to a Visual Studio 6.0 workspace (.dsw file)
- A path to a Visual Studio 6.0 project (.dsp file)
- A path to an eVC 4.0 workspace (.vcw file)
- A path to an eVC 4.0 project (.vcp file)
The BuildConsole command doesn’t force you to include the .sln file as part of the build command in order to build specific projects. However, omitting the .sln parameter is not recommended. Some of the information IncrediBuild may require in order to correctly compile the project may be missing from the project file. A known issue, for instance, is when a user would like to determine the Visual Studio version with which to build his project (this information is not part of the project file). For this specific purpose a flag "/VsVersion" was added to IncrediBuild's BuildConsole command that allows specifying the Visual Studio version with which IncrediBuild will build the projects.
The following are examples for running BuildConsole:
- To rebuild the "Debug|Win32" solution configuration in the solution "MySln.sln":
BuildConsole.exe MySln.sln /rebuild /cfg="Debug|Win32"
- To build only the project "Proj1" in the solution "MySln.sln", in both "Debug|Win32" and "Release|Win32" solution configurations:
BuildConsole.exe MySln.sln /build /prj=Proj1 /cfg="Debug|Win32,Release|Win32"
- To build a more complex combination of projects and configurations, using a preset called "MyPreset" previously saved in the Batch Build dialog:
BuildConsole.exe MySln.sln /build /preset="MyPreset"
In addition to this syntax, BuildConsole also supports msdev.exe and devenv.exe command line syntax for building projects. If you are already using batch files that spawn either msdev.exe or devenv.exe, replace the standard MSVC build with an IncrediBuild distributed build, by editing your files and replacing these program names with "BuildConsole.exe".
Note: If when running BuildConsole, you get the error: "'BuildConsole is not recognized as an internal or external command, operable program or batch file.", manually add the IncrediBuild installation folder to your system path or rerun the IncrediBuild setup application on your machine, making sure that the "Add IncrediBuild folder to the system path" option is selected.
Command Line Options
The following command line flags can be used with BuildConsole:
For VS 2008 and prior.
For example: /IntelCLVersion=11.1
For VS 2008 and prior.
Enter one or more commands separated by a space character, as they would appear in the cl.exe command line. For example:
BuildConsole MyProj /link_rem="/map:MyProj.map"
BuildConsole dcom.sln /rebuild /cfg="debug|win32" /msbuildargs="/detailedsummary" /usemsbuild
- The value may be enclosed in quotes.
BuildConsole returns the following return codes:
0 – No errors were encountered.
1 – Errors were encountered during the operation.
2 – A fatal IncrediBuild error was encountered (invalid parameters, input file not found, etc.).
3 – The operation was stopped before completing.
- Only one build at a time can be executed on a single machine. An attempt to run a build while another is running, pauses the build until the currently running build ends. Only then, does the new build begin to run.
- In order to achieve the full potential of 'BuildConsole', take a look at the performance boosts sections.
Make and Other Build Tools:
Children Display style h4 page Make and Other Build Tools Solution