如何在Visual Studio 2015中使用Clang为Windows编译C ++

据我了解,Visual Studio 2015附带有clang。 首先,我虽然这仅适用于Android和iOS应用程序,但是根据本文的介绍,对于Windows程序,也应该可以使用clang ++前端。 但是,我找不到相应的选项。

所以,请您向我解释一下,如何在c ++项目中(在VS2015 RC Community Edition中)将使用的编译器更改为clang。

MikeMB asked 2020-08-12T00:16:21Z
4个解决方案
25 votes

从VS2015 Update 1开始,您可以通过“新建项目”窗口安装“带有Microsoft CodeGen的Clang”模板,浏览至“已安装”->“模板”->“ Visual C ++”->“跨平台”。

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

Clang可以识别出完全不同的命令行选项集,因此,在使用v140_clang_3_7工具集时,项目属性必须使用与Clang兼容的选项,可以将其识别为以-开头而不是/。例如,Debug Information 将格式属性设置为“完整调试信息(DWARF2)(-g2 -gdwarf-2)”,将“启用C ++异常”属性设置为“是(-fexceptions)”。

在此博客文章中有更多信息。

screenshot of the new project window

Oktalist answered 2020-08-12T00:16:42Z
10 votes

据我了解,Clang和GCC都随Visual Studio 2015的Android和iOS跨平台SDK /工具一起提供。

从我所看到的来看,它只允许我在拥有那些跨平台项目之一的同时进行选择。

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

enter image description here

对于Windows C ++应用程序,您会看到下面的对话框,在该对话框中您可以看到Windows目标平台是灰色且只读的,这意味着您可能为每个目标平台都有一套工具包,但至少不能更改它,至少对于 现在。enter image description here

不知道如何将普通的VS项目转换为跨平台,而且很可能只能使用第三方编译器直接针对Android或iOS。

但是,可能会以与XP工具箱相同的方式将Clang安装为另一个工具箱。 因此,也许只是有人在摆弄它,并使其已经安装好就可以使用。

警告:答案是VS2015之前的更新1,该更新没有“带有Microsoft CodeGen的Clang”选项。

Trinidad answered 2020-08-12T00:17:29Z
3 votes

在仔细阅读了链接的文章,尤其是评论之后,我才明白,这不是VS2015 RC附带的功能,而是将来可能使用的功能,例如 将以SP或(更可能是)随VS的下一版本一起提供。

如sjdowling所述,您目前最能做的事情(2015年10月,clang 3.7)是下载并安装Windows的llvm。 这应该为您提供LLVM-vs2014平台工具集选项。 对我来说,它适用于简单的测试程序,但显然此版本的“ clang-vs”似乎尚不支持异常。 但是,根据这些说明,应该在lang 3.8上解决该问题。

MikeMB answered 2020-08-12T00:17:54Z
0 votes

尽管上述解决方案有效,但它们要求您安装了clang,在Visual Studio 2015安装中默认情况下该clang是关闭的。 接受的答案确实显示了如何安装它,尽管下一页将要求您关闭正在从中运行新项目的Visual Studio。

如果有人想知道如何安装clang,因为它没有显示在他们的列表中,那么这里是另一种解决方案:

  1. 控制面板->程序->程序和功能。
  2. 右键单击“ Microsoft Visual Studio Enterprise 2015”(或“微软视觉
  3. Studio 15预览”(如果您具有下一版本的预览)已安装Visual Studio)
  4. 点击“更改”
  5. 点击“修改”
  6. 选择“带有Microsoft CodeGen的Clang” – 2016年3月版本。

[HTTPS://blogs.MSDN.Microsoft.com/VC blog/2016/03/31/冲浪-with-Microsoft-code跟-March-2016-released/]

marsh answered 2020-08-12T00:18:50Z
translate from https://stackoverflow.com:/questions/31351372/how-to-compile-c-for-windows-with-clang-in-visual-studio-2015