LLVM 3.4与VS 2012的集成

时间:2014-05-23 07:46:59

标签: c++ visual-studio-2012 llvm

我使用Getting Started with the LLVM System using Microsoft Visual Studio阅读了在线文档并使用Cmake和visual studio构建了LLVM。我找不到如何在现有的visual studio项目中使用LLVM tooolchain。我是这个环境的新手,非常感谢任何帮助。

编辑1:我正在为一个项目做贡献,我需要建立一个口译员。该项目限制我在VS中编码。

以下是我尝试集成LLVM和VS时的错误,我必须做一些非常错误的事情LLVM compilation errors on VS 2012

编辑2:我不清楚在成功构建LLVM(以及在系统上安装)之后,我们应该如何将LLVM集成到现有VS项目中。

编辑3:我的目标是使用clang / llvm开发自己的语言。我无法弄清楚如何坐在VS环境中。

1 个答案:

答案 0 :(得分:3)

您所遵循的说明不应该产生“Visual Studio提供的编译器的插件替换”,但通常是构建LLVM + CLANG的方法 - 当然,除非您想要花费很多[1],要构建用C ++编写的编译器,您需要一个现有的C ++编译器 - 并且说明显示了如何使用Visual Studio执行此操作。然后,您的系统上有一个clang和clang ++编译器和工具,但它并不意味着“在Visual Studio中使用它”。

从我从过去的经验中可以看出,Visual Studio编译器并非易于替换,但您当然可以使用Makefile Project以您喜欢的任何方式编译任何内容。

来自MS的讨论确实提供了另一种解决方案,但同样,它不是“即时插件”解决方案: http://social.msdn.microsoft.com/forums/vstudio/en-US/b9610ed2-e8ae-48c9-864c-e3d12af97b05/support-an-alternative-compiler

一些进一步的谷歌搜索显示了这一点: https://github.com/ishani/ClangVSx

我不知道这是否运作良好 - 似乎“仅”支持clang 3.3,其中当前版本为3.4,“最新”为3.5之前。我怀疑存在巨大的差异,但我也不确定是否存在“无差异”。

[1]你可以从任何东西“引导”一个编译器,但编写一个可以编写该语言子集的小编译器,重复这几次,以最终编译实际的编译器是非常多的工作。更完整的编译器 - 而LLVM首先几乎没有为此设计。