是否可以(以及如何)使用 VS2015 IDE 使用编译器、链接器、STL 以及 VS2008 附带的所有其他内容来构建 native C++ 项目?

我正在尝试做的称为“C++ Native Multi-Targeting”并且众所周知,例如VS2012 允许使用 VS2008 (v90) 工具集,对于 C++ 项目,通过 Project Properties->Configuration Properties->General->Platform Toolset=v90。通常,开箱即用的 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>

缺点:每次更改总是一个完整的构建

关于c++ - 在 Visual Studio 2015 中使用 v90 (VS2008) 平台工具集,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34905488/

10-14 09:12