views:

308

answers:

2

I want to build my VS2010 .sln file (projects are .net 4.0) with msbuild from the command line. I expected this to work...

>C:/Windows/Microsoft.NET/Framework/v4.0.30319/msbuild.exe application.sln

However I get this message:

"Project file contains ToolsVersion="4.0", which is not supported by this version of MSBuild. Treating the project as if it had ToolsVersion="3.5"."

The build continues but it can't find any of my references and fails.

I'm probably missing something obvious... any help would be appreciated.

Thanks,
-dk

A: 

That's odd. Does VS2010 work OK? If not is the key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\4.0 missing? (Install bad.)

Verify the .sln version number at the top is 11.

Those are the only reasons I can think of.

Dan

dan
+2  A: 

This article maybe helpful: http://blog.prabir.me/post/Downgrading-VS2010-solutions-to-VS2008.aspx

And it seems it's not targeting proper msbuild version (error comes from 3.5 msbuild ver), try to open the Visual Studio 2010 command prompt, go to the solution directory and run msbuild.exe SolutionName.sln

Leszek Wachowicz
the script I was running it from had a typo and indeed was calling the 3.5 msbuild. Once I actually called the right exe it worked like a charm.
dk