Trying to build an older project (VS2010) with Visual Studio 2015 - from the command line. But, I\'m getting this:
C:\\Program Files (x86)\\MSBuild\\Micr
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.Cpp.Platform.targets(55,5): error MSB8020: The build tools for Visual Studio 2010 (Platform Toolset = 'v100') cannot be found.
Clearly, you don't have Visual Studio 2010 (Platform Toolset = 'v100')
toolset installed and your old project (Visual Studio 2010) refers to it.
Your options:
If you open a vcxproj file in Visual Studio 2015, Go to project properties -> General settings.
you'll see that there is a PlatformToolset property. For Visual Studio 2015, it is v140
; For Visual Studio 2010, it is v100
.
Change the Platform Toolset to Visual Studio 2015 (Platform Toolset = 'v140')
. You may then be able to build from command line and from VS editor as well (beware, upgrading solution doesn't not guarantee that solution will build fine.)
You can set PlatformToolset
without changing vcxproj file. You could overwrite PlatformToolset property with /p:PlatformToolset=v140
to change the toolset.
e.g. msbuild myProject.vcxproj /p:PlatformToolset=v140
In case you don't know Platform Toolset and their values:
Visual Studio .NET 2002 (Platform Toolset = 'v70')
Visual Studio .NET 2003 (Platform Toolset = 'v71')
Visual Studio 2005 (Platform Toolset = 'v80')
Visual Studio 2008 (Platform Toolset = 'v90')
Visual Studio 2010 (Platform Toolset = 'v100')
Visual Studio 2012 (Platform Toolset = 'v110')
Visual Studio 2013 (Platform Toolset = 'v120')
Visual Studio 2015 (Platform Toolset = 'v140')
Visual Studio 2017 (Platform Toolset = 'v141')
Visual Studio 2019 (Platform Toolset = 'v142')
...