Incorrect solution build ordering when using MSBuild.exe

We’ve had a few reports of cases where Visual Studio, and previous versions of MSBuild, will build the projects in the solution in the correct order, but the 4.0 version of MSBuild.exe gets the order wrong. Here’s a full description of what’s going on, why it began in 4.0, and the fix we recommend to…

7

MSBuild Known Issues

Since the release of Visual Studio 2010 we have received a few reports of crashing behavior which can be traced back to issues with MSBuild.  We’ve analyzed all of these and there are several particular cases where a crash can occur.  We’ve also added a notification to Windows Error Reporting to help guide those who…

1

Debugging MSBuild script with Visual Studio (3)

In my last two posts (here and here) I showed how to enable the unsupported MSBuild debugger to debug a build started on the command line with MSBuild.exe. In this final post, I’ll mention some other variations. Note that this blog is rather narrow, so some of the screenshots may be hard to see –…

3

Debugging MSBuild script with Visual Studio (2)

In my previous post, I showed how to enable the hidden Visual Studio debugger for MSBuild script, and demonstrated it by stepping through the evaluation of a C# project. In this post, I’ll keep debugging into the actual build of that project. Note that this blog is rather narrow, so some of the screenshots may…

2

Debugging MSBuild script with Visual Studio

Back when we started 4.0 development, I polled readers of the MSBuild blog to find out what features were most important to them. Debugging was #1 which was very surprising to us. Thinking about it more, it makes sense. In our team we’ve become so proficient ourselves at reading the XML and making sense of…

9

Better Parallelism in MSBuild 4 with YieldDuringToolExecution

Introduction In MSBuild 4 we introduced several performance improvements, particular for large interdependent builds.  By and large they are automatic and you receive their benefit without making any changes to the way your build process in authored.  However, there are still some cases where we are unable to make the best decision.  One such case…

2

Assembly Resolution in MSBuild and Visual Studio Series Introduction

Assembly references are an integral part of build process. When the assembly references passed to the compiler are correct everything works but when they are not projects stop building.  When this happens It can be frustrating to try and figure out why a reference was resolved from one location rather than another thereby causing the…

3

Building on Cross targeting scenarios and 64-bit MSBuild

During the Visual Studio 2010 development cycle a push to make the build experience better on Cross compilation scenarios as well on making sure a build using 32-bit MSBuild was identical (in outputs) to a build using 64-bit MSBuild. In most cases, 64-bit and 32-bit MSBuild will indeed produce the same output. However there are…

4

MSBuild Property Functions (2)

Some more information about this 4.0 feature. (I’ve also updated the first post with this, so everything’s in one place for your reference.) Built-in MSBuild functions The full list of built-in [MSBuild] functions, like the one above, are in the MSDN topic here. They include arithmetic (useful, for example, for modifying version numbers), functions to convert…

0

A brief MSBuild Blog Note

Following extensive feedback on the decision to move the MSBuild blog to The Visual Studio Blog, a decision has been made to cross-post all MSBuild blog posts to this blog. All current MSBuild posts to The Visual Studio Blog have now been posted here. Apologies if you have received RSS notifications on content you may…

0