Wednesday, April 1, 2009

Build In Visual Studio

There are two type of compilers used for compiling
1. Visual Studio comes with a in-process compiler, or in-proc compiler.
2. In the .NET Framework we also ship a separate compiler: the framework compiler, CSC.EXE.

The downside of using the in-proc compiler is that it limits scalability. The Visual Studio address space is pretty crowded, and compiling large projects takes up a lot of address space. This wouldn't be a concern if Visual Studio spawned CSC.EXE for the build. So if you run into build scalability issues with a Visual Studio full build, you can often work around them by invoking MSBUILD.EXE from the command line supplying the .SLN file.

First Approach
So if you want to use the compiler comes with .Net Framework then change the setting of UseHostCompilerIfAvailable property in your project (.csproj) file to false (it defaults to true). Just put the following in the first PropertyGroup element at the top of your project file

<UseHostCompilerIfAvailable>false</UseHostCompilerIfAvailable>

Second Approach
"%SystemRoot%\Microsoft.NET\Framework\v3.5\msbuild.exe" "..\MysampleProject.sln" /p:"Platform=Mixed Platforms" /p:Configuration=Debug /t:rebuild /maxcpucount:20

No comments:

Post a Comment