如何在Visual Studio 2015中使用clang编译C++ for Windows

Mik*_*eMB 42 c++ visual-studio clang++ visual-studio-2015

据我所知,Visual Studio 2015附带了clang.首先我虽然这只适用于Android和iOS应用,但根据这篇文章,它也应该可以使用clang ++前端用于Windows程序.但是,我找不到相应的选项.

那么请你解释一下,如何在c ++项目中改变用过的编译器(在VS2015 RC社区版中).

Okt*_*ist 25

从VS2015 Update 1开始,您可以通过New Project窗口安装"Clang with Microsoft CodeGen"模板,浏览到Installed - > Templates - > Visual C++ - > Cross Platform.

然后,您可以v140_clang_3_7在任何Windows C++项目的属性页中选择带有Microsoft CodeGen Platform Toolset 的Clang 3.7 .

Clang具有一组完全不同的命令行选项,因此在使用v140_clang_3_7工具集时,项目属性必须使用Clang兼容选项,可以将其识别为以-而不是开头/.例如,Debug Information Format属性设置为"Full Debug Information(DWARF2)(-g2 -gdwarf-2)",并将Enable C++ Exceptions属性设置为"Yes(-fexceptions)".

这篇博客文章中有更多信息.

新项目窗口的屏幕截图


Tri*_*dad 10

据我所知,Clang和GCC都附带了适用于Visual Studio 2015的Android和iOS跨平台SDK /工具.

从我所看到的,它只允许我在拥有其中一个跨平台项目的时候选择它们.

使用GLES C++应用程序的模板项目,您将获得以下选项:

在此输入图像描述

对于Windows C++应用程序,您可以在下面的对话框中看到Windows目标平台是灰色的并且是只读的,这意味着您可能为每个目标平台提供了一组工具包,但您根本无法更改它,至少对于现在. 在此输入图像描述

不知道你如何将一个普通的VS项目变成跨平台,而且很可能你只能使用第三方编译器开箱即用Android或iOS.

但是,有可能以与XP工具包相同的方式将Clang安装为另一个工具包.所以也许这只是一个摆弄它并让它可用的问题,因为它已经安装好了.

  • 对我来说,它在我所有的C ++项目中都能正常工作。(Win32控制台应用程序和Windows Universal&DirectX 11 App)有一个“ Visual Studio 2015-带有Microsoft CodeGen的Clang(v140_clang_c2)”选项。所以我想现在可以买到。哦,它可以作为普通VS2015安装程序的一个选项进行安装。无需其他跨平台选项。 (2认同)