4

是否有可能(以及如何)使用VS2015 IDE使用編譯器,鏈接器,STL和VS2008附帶的其他一切來構建本地C++項目?在Visual Studio 2015中使用v90(VS2008)平臺工具集

我想要做的事情叫做「C++ Native Multi-Targeting」並且已知例如,通過Project Properties-> Configuration Properties-> General-> Platform Toolset = v90,VS2012允許使用VS2008(v90)工具集,用於C++項目。通常情況下,開箱即用的v90將不可用,但是如果您並排安裝VS2008 + VS2010 + VS2012或VS2008 + win7.1sdk + VS2012,則會顯示v90。

但是迄今爲止我還找不到任何有關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') 
+0

它不僅是可能的,它是*如果您需要構建與CLR v2.0兼容的C++/CLI程序集,則需要*。出了什麼問題,或者甚至沒有嘗試過呢? –

+0

還沒有試過,想先問問別人。 –

+0

很遺憾,沒有「官方」的方式來安裝舊的工具集,而沒有整個舊的VS安裝程序。順便說一句,我有一個恐懼安裝和舊的VS比新的,因爲我覺得舊的安裝不是那麼「乾淨「;) – Luke

回答

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> 

缺點:總是一個完整的構建爲每一個變化

+0

感謝您報告您的體驗!您的設置中並排安裝了哪些SDK和Visual Studio版本? –

+1

Visual Studio 6.0,Visual Studio .NET 2003,Visual Studio 2008和Visual Studio 2015. SDK's:只有與Visual Studios一起出現的SDK。目前仍然在尋找解決方案來實現這一目標,而無需關閉文件跟蹤器(我認爲只要並排安裝Visual Studio 2008,通常就可以開箱即用)。 – pruf

+1

有關此主題的新聞:已經手動安裝了Windows SDK 7.1在Visual Studio 2015安裝之前(這在我的第一條評論中錯過了)。沒有Windows SDK7.1,甚至無法選擇Visual Studio 2008(v90)工具。 – pruf

相關問題