用于Windows的LLVM C ++ IDE
是否有一些Windows的C / C ++ IDE与LLVM编译器(和Clang C / C ++分析器) 集成在一起,就像现代的Xcode一样。
我有Dev-Cpp(它使用过时的GCC)和Code :: Blocks (与一些GCC)。 但GCC给了我非常神秘的错误信息。 我想从Clang前端获得更多用户友好的错误消息。
是的,Clang不能用于复杂的C ++代码,但是中继Clang已经可以自己编译LLVM了。 所以我想知道是否有LLVM IDE在开发或testing版本。
是的,我可以使用Clang作为其他编译器与GCC兼容的IDE。 但是有没有与Clang 集成的 IDE? 铿锵有不同的输出格式,所以IDE必须parsing它。 铿锵可以提供源parsing的IDE。 Clang有一个分析选项,必须在IDE中支持。 看看,例如http://iosdevelopertips.com/xcode/static-code-analysis-clang-and-xcode-3-2.html
而Clang最想要的function是智能自动完成,所以IDE只能提示语法正确的变体,例如只列出这个结构类的字段。
结果:(从答案中合并):
- Eclipse与CDT> = 8和https://code.google.com/archive/p/llvm4eclipsecdt/插件,从Petri Tuononen(没有智能自动完成)
- Vim与LLVM项目的vimrc(只有智能补全?) https://llvm.org/viewvc/llvm-project/llvm/trunk/utils/vim/
- Emacs的(智能完成?) https://llvm.org/svn/llvm-project/cfe/trunk/utils/clang-completion-mode.el
- Qt创build者: https : //blog.qt.io/blog/2011/10/19/qt-creator-and-clang/
- CodeLite: http : //www.codelite.org/LiteEditor/ClangIntegration35
Eclipse CDT通过插件( llvm4eclipsecdt )支持LLVM。 据我所知,它是唯一支持LLVM的Windows支持的IDE 。 我是插件的主要作者,所以你可以问任何有关它的问题。
该插件提供了Clang和llvm-gcc编译的基本function,并支持Linux和Windows(w / Cygwin和MiNGW)。 诸如汇编器,存档器,链接器和静态编译器(llc)之类的LLVM工具被configuration并且可以通过UI来定制。 该插件提供了IDE可以提供的所有优点,例如轻松configuration和一次构build。
唯一的缺点是它还没有准备好,因为它缺乏LLVM可以提供的一些高级function,如Clang分析和智能自动完成。 该插件也没有很好的testing,可能无法正常工作,所以我希望能通过谷歌代码开发网站(下面列出)的邮件列表获得用户反馈。 我希望我有时间进一步发展。 我只在业余时间开发,这是非常有限的。 我欢迎任何开发者参与并为项目做出贡献。
发展网站: http://code.google.com/p/llvm4eclipsecdt/
https://github.com/TuononenP/llvm4eclipsecdt
Eclipse市场(100%免费和开源): http://marketplace.eclipse.org/content/llvm-toolchain-eclipse-cdt
更新:插件已被弃用。 而是使用官方的Eclipse更新站点,在编程语言下安装“C / C ++ LLVM-Family编译器构build支持”,例如http://download.eclipse.org/releases/mars
LLVM的贡献者Dan Gohman最近在vim中添加了Clang代码补全。
是的,是的,vim不是一个IDE,但是知道它可能是有用的。
https://llvm.org/svn/llvm-project/cfe/trunk/utils/clang-completion-mode.el为;emacs提供了一个类似的选项。
Qt Creator也与Clang合作
现在他们正在添加对Visual Studio 链接的支持。 它可以在这里下载。
没有一个窗户。 但是,如果你想聪明的自动完成,netbeans具有C ++最好的代码完成之一。 它分析macros,通用容器和智能指针。 另外它提供了重构,代码插入的构造函数和getter和setter。 它工作得很好。 但是,由于它仍然为C ++使用单独的parsing器,因此它不会捕获像编译器那样多的错误。
Netbeans for java与编译器集成在一起,因此在input时会出现错误和警告,以及语法正确的代码完成。 所以,NetBeans很可能在未来与clang集成为C ++提供相同的function。
此外,CodeLite还有Clang后端,用于完成智能代码。 请参阅使用CodeLite使用clang代码完成 。
CodeLite可用于Windows,但是,我还没有在Windows下testing它。
LLVM支持已被添加到Eclipse : http : //marketplace.eclipse.org/node/28778
我可以添加SublimeText 2吗? 它已经有一个插件SublimeClang ,支持基于clang的智能代码完成。
LLVM提供Windows快照构build – Visual Studio作为Windows安装程序的一个铿锵工具集。 目前,它应该与Visual Studio 2010,2012和2013进行整合。更多信息可以在LLVM的博客文章中find在Windows上LLVM工具链的前进path 。
Clang有一个驱动程序,至less应该是gcc的直接替代品,所以基本上任何可以使用gcc作为编译器的IDE都应该能够使用clang作为它的编译器(虽然我没有亲自testing过,所以我不能真正保证它的工作效果)。
没有。
目前只有xcode支持最less的clang。 如果你想在Windows上使用clang静态分析,你必须通过CLI来完成。