![](/img/trans.png)
[英]Visual Studio 2015: Compile C/C++ without a runtime library
[英]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,因为它没有出现在他们的列表中这里是另一个解决方案:
https://blogs.msdn.microsoft.com/vcblog/2016/03/31/clang-with-microsoft-codegen-march-2016-released/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.