After uninstall, error MSB8020

Oct 29, 2013 at 8:48 PM
After installing Daffodil, I can no longer compile any projects in Visual Studio 2012, even with the v110 toolset.

1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.Cpp.Platform.targets(44,5): error MSB8020: The builds tools for v80 (Platform Toolset = 'v80') cannot be found. To build using the v80 build tools, either click the Project menu or right-click the solution, and then select "Update VC++ Projects...". Install v80 to build using the v80 build tools.

Any ideas on why this might be? Was a Daffodil file left behind somewhere that needs to be deleted/changed?
Coordinator
Oct 30, 2013 at 12:09 AM
You say that this happens "after installing Daffodil", but the last question implies that you uninstalled Daffodil. Please clarify. Does the problem occur after you uninstall Daffodil, or before you uninstall Daffodil (and if before, does it go away when you uninstall?). Did you make any changes to the out-of-the-box MSBuild files?
Oct 30, 2013 at 12:39 PM
Edited Oct 30, 2013 at 12:49 PM
Hi, sorry for the confusion.

I installed Daffodil and had great success building with the v80 toolset. I could also build with v100 and v110, no problems!

I then uninstalled Daffodil using the what I assume is the Daffodil uninstaller. I uninstalled through control panel->programs.

At this point, I can open my solution/project files and select the v110 toolset (v80 does not appear anymore as a choice, this is expected). When I attempt to build, MSB8020 is given as an error.

I don't recall ever making any changes to the out of the box MSBuild files. To try and fix this problem, I have deleted the MSBuild directory under Program Files x86 and run the repair tool on the .NET 2.0 SDK, Windows 7.1 SDK, VS2010, VS2012. It hasn't helped which is why I'm now stumped on what the problem can be.

Any ideas would be very much appreciated.

EDIT:

While I initially reported this with VS2012, it is also an issue with VS2010, except the error is:


1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\x64\Microsoft.Cpp.x64.Targets(514,5): error MSB8008: Specified platform toolset (v80) is not installed or invalid. Please make sure that a supported PlatformToolset value is selected.
Coordinator
Oct 30, 2013 at 1:35 PM
Is this simply a case of your project files still specifying the now-unavailable v80 platform toolset? Uninstalling Daffodil will not change the project file; you'll need to do that yourself, either by editing the file in a text editor or changing the platform toolset in the UI.
Oct 30, 2013 at 6:25 PM
I don't think it's the case of the V80 toolset being specified still as the error happens when the toolset is v110 (as indicated by the UI). It's almost as if Visual Studio has a list of toolsets it should be looking for and since it can't find v80, it fails. I actually did a search through all of the files in MSBuild looking for the string "v80" and didn't find anything. The project file for sure had toolset v110 specified in the XML when I looked at it in notepad++.
Coordinator
Oct 30, 2013 at 6:43 PM
Edited Nov 4, 2013 at 2:01 AM
Check your "%ProgramFiles(x86)%\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\PlatformToolsets" folder; with Daffodil uninstalled, it should only contain v90 and v100 subfolders. Also, make sure you close every instance of Visual Studio (and check in Task Manager to make sure they're really all dead). If that doesn't work, I would do a complete reboot, just to make sure everything gets reset. I have no other ideas, but please post back if you find anything new.