在 Visual Studio 2015 年使用 v90 (VS2008) 平台工具集
Using v90 (VS2008) Platform Toolset in Visual Studio 2015
是否可以(以及如何)使用 VS2015 IDE 使用编译器、链接器、STL 和 VS2008 附带的所有其他内容构建本机 C++ 项目?
我正在尝试做的事情叫做 "C++ Native Multi-Targeting" 并且众所周知,例如VS2012 允许为 C++ 项目使用 VS2008 (v90) 工具集,通过项目属性->配置属性->常规->平台工具集=v90。通常情况下,out-of-the-box v90 将不可用,但如果您同时安装 VS2008+VS2010+VS2012 或 VS2008+win7.1sdk+VS2012,则会出现。
但到目前为止,我找不到任何关于为 C++ 项目弥合 vs2008 和 vs2015 之间更大差距的尝试报告。根据MSDN,官方似乎不支持它。但我想知道它是否仍然有效。
作为参考,平台工具集值是:
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 = 'v112')
Visual Studio 2015 (Platform Toolset = 'v114')
应该是可以的。我试过了,但 MSBuild 失败并显示以下消息:
1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\Microsoft.Cpp.Win32.Targets(57,5):错误:缺少所需文件“” .
到目前为止我找到的唯一解决方案是在 vcxproj 文件中添加以下行:
<PropertyGroup Label="Globals">
...
<TrackFileAccess>false</TrackFileAccess>
</PropertyGroup>
缺点:每次更改总是一个完整的构建
是否可以(以及如何)使用 VS2015 IDE 使用编译器、链接器、STL 和 VS2008 附带的所有其他内容构建本机 C++ 项目?
我正在尝试做的事情叫做 "C++ Native Multi-Targeting" 并且众所周知,例如VS2012 允许为 C++ 项目使用 VS2008 (v90) 工具集,通过项目属性->配置属性->常规->平台工具集=v90。通常情况下,out-of-the-box v90 将不可用,但如果您同时安装 VS2008+VS2010+VS2012 或 VS2008+win7.1sdk+VS2012,则会出现。
但到目前为止,我找不到任何关于为 C++ 项目弥合 vs2008 和 vs2015 之间更大差距的尝试报告。根据MSDN,官方似乎不支持它。但我想知道它是否仍然有效。
作为参考,平台工具集值是:
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 = 'v112')
Visual Studio 2015 (Platform Toolset = 'v114')
应该是可以的。我试过了,但 MSBuild 失败并显示以下消息:
1>C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\Microsoft.Cpp.Win32.Targets(57,5):错误:缺少所需文件“” .
到目前为止我找到的唯一解决方案是在 vcxproj 文件中添加以下行:
<PropertyGroup Label="Globals">
...
<TrackFileAccess>false</TrackFileAccess>
</PropertyGroup>
缺点:每次更改总是一个完整的构建