簡體   English   中英

如何在Visual Studio 2015中使用clang編譯C ++ for Windows

[英]How to compile C++ for Windows with clang in Visual Studio 2015

據我所知,Visual Studio 2015附帶了clang。 首先我雖然這只適用於Android和iOS應用,但根據這篇文章,它也應該可以使用clang ++前端用於Windows程序。 但是,我找不到相應的選項。

那么請你解釋一下,如何在c ++項目中改變用過的編譯器(在VS2015 RC社區版中)。

從VS2015 Update 1開始,您可以通過New Project窗口安裝“Clang with Microsoft CodeGen”模板,瀏覽到Installed - > Templates - > Visual C ++ - > Cross Platform。

然后,您可以在任何Windows C ++項目的屬性頁中選擇帶有Microsoft CodeGen v140_clang_3_7 Platform Toolset的Clang 3.7。

Clang具有一組完全不同的命令行選項,因此在使用v140_clang_3_7工具集時,項目屬性必須使用Clang兼容選項,可以將其識別為-而不是/ 例如,“調試信息格式”屬性設置為“完全調試信息(DWARF2)( - -g2 -gdwarf-2 )”,“啟用C ++異常”屬性設置為“是( -fexceptions )”。

這篇博客文章中有更多信息。

新項目窗口的屏幕截圖

據我所知,Clang和GCC都附帶了適用於Visual Studio 2015的Android和iOS跨平台SDK /工具。

從我所看到的,它只允許我在擁有其中一個跨平台項目的時候選擇它們。

使用GLES C ++應用程序的模板項目,您將獲得以下選項:

在此輸入圖像描述

對於Windows C ++應用程序,您可以在下面的對話框中看到Windows目標平台是灰色的並且是只讀的,這意味着您可能為每個目標平台提供了一組工具包,但您根本無法更改它,至少對於現在。 在此輸入圖像描述

不知道你如何將一個普通的VS項目變成跨平台,而且很可能你只能使用第三方編譯器開箱即用Android或iOS。

但是,有可能以與XP工具包相同的方式將Clang安裝為另一個工具包。 所以也許這只是一個擺弄它並讓它可用的問題,因為它已經安裝好了。

警告: 這個答案是VS2015之前的更新1,它沒有“Clang with Microsoft CodeGen”選項。

在閱讀了鏈接的帖子,特別是評論之后,我逐漸明白,這不是VS2015 RC附帶的功能,而是可能的未來功能,可能會在SP中發布,或者(更有可能)下一個版本的VS.

正如sjdowling所提到的,你現在最接近的事情(2015年10月,clang 3.7)是下載並安裝llvm for windows 這應該為您提供LLVM-vs2014平台工具集選項。 對我來說它適用於簡單的測試程序,但顯然這個版本的“clang-vs”似乎還不支持異常。 但是,根據這些說明 ,這個問題應該主要針對鏗鏘聲3.8解決。

雖然上述解決方案有效,但它們要求您安裝clang,默認情況下在visual studio 2015安裝中已關閉。 接受的答案確實顯示了如何安裝它,雖然下一頁將要求您關閉您正在運行新項目的visual studio。

如果有人想知道如何安裝clang,因為它沒有出現在他們的列表中這里是另一個解決方案:

  1. 控制面板 - >程序 - >程序和功能。
  2. 右鍵單擊“Microsoft Visual Studio Enterprise 2015”(或“Microsoft Visual
  3. Studio 15預覽“如果您預覽了安裝的Visual Studio的下一個版本”
  4. 點擊“更改”
  5. 點擊“修改”
  6. 選擇“Clang with Microsoft CodeGen” - 2016年3月發布。

https://blogs.msdn.microsoft.com/vcblog/2016/03/31/clang-with-microsoft-codegen-march-2016-released/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM