2010-03-21 50 views
88

是否有一些Windows版本的C/C++ IDE,它是与LLVM编译器(和Clang C/C++分析器)集成的,就像现代Xcode一样。用于Windows的LLVM C++ IDE

我有Dev-Cpp(它使用过时的GCC)和Code::Blocks(与一些GCC)。但GCC给了我非常神秘的错误信息。我想从Clang前端获得更多用户友好的错误消息。

是的,Clang不能用于复杂的C++代码,但是中继Clang已经可以编译LLVM本身。所以我想知道是否有LLVM IDE在开发或测试版本。

是的,我可以使用Clang作为其他编译器与GCC兼容的IDE。但是有没有任何IDE,那是与Clang的集成? Clang具有不同的输出格式,所以IDE必须解析它。 Clang可以提供IDE源解析。 Clang有一个分析选项,必须在IDE中支持。请看一下,例如http://iosdevelopertips.com/xcode/static-code-analysis-clang-and-xcode-3-2.html

Clang最需要的功能是智能自动完成功能,因此IDE只能提示语法正确的变体,只列出这个结构类的字段。

结果:(从答案合并):

+3

我想知道Emacs是否会在未来获得对Clang的支持。 顺便说一句,有一个emacs小模式在这里https://llvm.org/svn/llvm-project/cfe/trunk/utils/clang-completion-mode.el虽然我没有测试它自己。 – ustun 2010-07-10 11:22:59

+0

QtCreator ..> _ <#ignored .. – Kokizzu 2012-03-25 15:21:09

+0

Code :: Blocks与Clang一起使用。 – 2014-08-26 06:53:42

回答

55

LLVM在Eclipse CDT的经由插件(llvm4eclipsecdt)的支持。据我所知,仅支持Windows支持的LLVM的Windows只支持。我是插件的主要作者,因此您可以提出与其相关的任何问题。

该插件提供了Clang和llvm-gcc编译的基本功能,并支持Linux和Windows(带Cygwin & MiNGW)。诸如汇编器,存档器,链接器和静态编译器(llc)之类的LLVM工具已配置并可通过UI进行自定义。该插件提供了IDE可以提供的所有优点,例如轻松配置和构建一个动作。

唯一的缺点是它还没有准备好,因为它缺乏LLVM可以提供的一些高级功能,如Clang分析和智能自动完成功能。该插件也未经过良好测试,可能无法正常工作,因此我希望可以通过Google代码开发站点(下面列出)中的邮件列表获得用户反馈。我希望我有时间进一步发展。我只是在业余时间开发它,这是非常有限的。我欢迎任何开发者参与并为项目做出贡献。

开发网站:
http://code.google.com/p/llvm4eclipsecdt/
https://github.com/TuononenP/llvm4eclipsecdt

的Eclipse市场(100%免费&开源):
http://marketplace.eclipse.org/content/llvm-toolchain-eclipse-cdt

UPDATE:插件已被弃用。请使用正式的Eclipse更新站点在编程语言下安装“C/C++ LLVM-Family Compiler Build Support”。 http://download.eclipse.org/releases/mars

+0

嗨。很高兴在这里见到你!您说“MinGW二进制文件是为LLVM和前端提供的” - 您可以添加(在这里或谷歌代码网站上)到LLVM的mingw二进制文件的链接吗? – osgx 2011-05-12 14:07:07

+1

另外,关于你博客的论文。 clang不适用于ada或fortran:“对于其他语言,包括Java,Fortran和Ada,LLVM仍然依赖于GCC” – osgx 2011-05-12 14:19:26

+2

您可以从这里获取LLVM 2.9的mingw二进制文件:http://llvm.org/releases/download。 html#2.9 – 2011-05-13 07:58:30

3

锵有(至少应该是)一个驱动器gcc的直接替代品,所以本质上是可以使用gcc作为其编译器应该能够使用铛作为其编译为任何IDE (尽管我没有亲自测试过,所以我不能真正证明它的工作效果)。

+1

但是不能使用除标准工具集以外的任何功能,例如代码分析和制表符完成。 – 2012-09-04 16:48:11

3

编号

只有xcode目前对clang的支持很少。如果你想在Windows上使用clang静态分析,你必须通过CLI来完成。

+6

这种回答/问题应该有一个超时。(元主题) – 2010-11-02 18:58:47

+0

埃尔南埃切,是的,但我可以随时更改接受的答案。你可以问我,如果你觉得情况改变了,答案是“是” – osgx 2010-11-08 17:22:15

20

LLVM撰稿人Dan Gohman最近将Clang代码完成添加到vim

http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/vim/vimrc旨在用于开发LLVM本身,并有助于LLVM编码风格,但代码完成部分应该很容易提取。

是的,是的,vim不是IDE,但它可能有助于了解。

https://llvm.org/svn/llvm-project/cfe/trunk/utils/clang-completion-mode.elemacs提供了一个类似的选项。

+4

VIM不仅仅是IDE。谢谢你的好消息! – osgx 2010-10-31 00:00:31

+3

圣莫利,我一直在等待这么多年.... VIM + Bash + cmake = IDE – 2010-11-04 14:44:56

5

窗户没有一个。但是,如果你想要智能自动完成,netbeans具有C++最好的代码完成之一。它解析宏,通用容器和智能指针。另外它还提供重构,构造函数和getter和setter的代码插入。它工作得很好。但是,由于它仍然为C++使用单独的解析器,因此它不会捕获像编译器那样多的错误。

Java的Netbeans与编译器集成在一起,因此它在输入时会给出错误和警告,以及语法正确的代码完成。因此,NetBeans很可能在未来与clang集成为C++提供相同类型的功能。

+2

netbeans如何解析源代码?它使用哪个C/C++前端? – osgx 2010-12-24 05:01:13

+3

是的netbeans解析代码完成的源本身。也许将来他们会使用clang进行解析,但还没有被整合。您可以为netbeans gcc或clang选择不同的编译器。我还没有尝试与铿锵。 – 2010-12-24 14:45:59

8

Qt Creator作品也与锵......

+0

,它可以与Windows一起使用吗? – osgx 2012-02-25 11:21:44

+2

当然,QtCreator是跨平台的IDE .. – Kokizzu 2012-03-13 14:52:04

+0

谢谢,添加到问题。你能说,从哪个版本的QTcreator那里得到了clang的支持? – osgx 2012-03-25 22:15:31

4

我可以补充SublimeText 2?它已经有一个插件SublimeClang,它支持基于clang的智能代码完成。

+0

关于插件:“为C/C++/ObjC/ObjC++提供自动完成建议。可以选择解析代码,因为它是键入的,并显示错误和警告。“ – osgx 2012-07-08 14:41:41

+0

***未完成*** – 2016-04-26 00:46:05

6

现在他们正在添加对Visual Studio link的支持。 它可以下载here

2

KDevelop对于Windows是另一种选择。尽管还处于早期阶段(您目前需要设置环境以便能够自己使用MSVC/MinGW编译器),但它仍然可用,并将IDE的代码理解功能带入Windows。

https://www.kdevelop.org/features