views:

37

answers:

1

Hello

I have VS 2008 Professional and a Smart Device .NET C# project. I have ~100 cs files in total. The build takes very long time, I have to wait for linker approx. 1min (60s) every time i compile the project. I have Core i3, 4GB RAM, 7200rpm disk. What may be the reason and how to optimize the build? Any Visual Studio options?

Regards

Dominik

A: 

If you follow the advise from Hans Passant's comment and set MSBuild to diagnostic output it will give a clearer picture of just what is taking the time. If you find that your build is hanging on the Licensing Compiler (LC.exe) then this could be due to it trying to call a server and timing out. You can resolve this by altering your machine.config -

edit c:\windows\microsoft.net\framework\v2.0.50727\config\machine.config, and add the following key:

  <configuration>
    <runtime>
      <generatePublisherEvidence enabled="false"/>

EDIT://

Based on the comment below I did a little digging. The platform verification task has a known issue where it runs very slowly in VS2008. More detail on it can be found here:

http://blogs.msdn.com/b/vsdteam/archive/2006/09/15/756400.aspx

One way around this is to disable the task itself in your build. To do this

1) Open the file:

%windir%\Microsoft.NET\Framework\v2.0.50727\Microsoft.CompactFramework.Common.Targets

for editing.

2) Go to the line which reads:

Name="PlatformVerificationTask">

and change it to:

Name="PlatformVerificationTask" Condition="'$(SkipPlatformVerification)' != 'true'">

3) Add the SkipPlatformVerification environment variable to the system and set it to "true" (To re-enable Platform Verification set the environment variable to "false"). If you need help on setting up an environment variable read http://vlaurie.com/computers2/Articles/environment.htm. If you don't want to add an environment variable you can swap the condition for something that is always false (i.e. Condition="'true' == 'false'")

Wolfwyrd
I checked the diagnostic level. In my case the PlatformVerificationTask takes 290174 ms. What is the reason?
dominolog