在Visual Studio 2015中使用v90(VS2008)平台工具集

时间:2016-01-20 16:35:10

标签: c++ visual-studio-2008 visual-studio-2015 native multi-targeting

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

我尝试做的事情被称为" C ++ Native Multi-Targeting" ,并且例如VS2012允许通过Project Properties-> Configuration Properties-> General-> Platform Toolset = v90,为C ++项目使用VS2008(v90)工具集。通常情况下,开箱即用的v90将不可用,但如果您并排安装VS2008 + VS2010 + VS2012或VS2008 + win7.1sdk + VS2012,则会出现。

但到目前为止,我还没有找到任何报道的尝试来弥补vs2008和vs2015之间C ++项目的更大差距。根据{{​​3}},似乎官方它不受支持。但是我想知道它是否可行。

供参考,平台工具集值为:

dput(head(alls,20))
structure(list(YEAR = 1986:2005, Layer = structure(c(6L, 6L, 
6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 
6L, 6L), .Label = c("AP", "B ", "BP", "BS", "M ", "S ", "VH"), class = "factor"), 
    Station = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
    1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = c("RET1.1", 
    "RET2.1", "RET2.2", "RET2.4", "RET3.1", "RET3.2", "RET4.1", 
    "RET4.2", "RET4.3", "RET5.1A", "RET5.2"), class = "factor"), 
    mean = c(7.7, 7.7, 8.375, 8.275, 8.425, 7.125, 9.35, 8.225, 
    8.15, 8.233333333, 9.5, 9.05, 7.575, 8.675, 8.15, 7.625, 
    7.725, 7.6, 8.5, 8.425), period = structure(c(2L, 2L, 2L, 
    2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
    2L, 2L), .Label = c("all", "Apr_May", "Aug_Sep", "feb_mar", 
    "Jun_Jul", "Oct_Nov"), class = "factor"), Parameter = structure(c(3L, 
    3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
    3L, 3L, 3L, 3L), .Label = c("CHLA", "DIN", "DO", "DON", "DOP", 
    "NH4F", "NO23F", "NO2F", "NO3F", "PC", "PH", "PIP", "PN", 
    "PO4F", "PP", "SALINITY", "SIF", "SPCOND", "TDN", "TDP", 
    "TN", "TON", "TP", "TSS", "TURB_NTU", "WTEMP"), class = "factor")), .Names = c("YEAR", 
"Layer", "Station", "mean", "period", "Parameter"), row.names = 121:140, class = "data.frame")

1 个答案:

答案 0 :(得分:2)

应该可以。我已经尝试过,但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>

缺点:始终为每次更改构建完整的构建