94

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

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

是的,Clang 无法与复杂的 C++ 代码一起使用,但trunk Clang 已经可以编译 LLVM 本身。所以我想知道是否有任何 LLVM IDE 处于开发或 beta 版本中。

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

Clang 最想要的特性是智能自动完成,因此 IDE 只能建议语法正确的变体,例如只列出这个结构、类的字段。

结果:(从答案合并):

4

13 回答 13

59

Eclipse CDT通过插件 ( llvm4eclipsecdt )支持 LLVM 。据我所知,它是唯一支持 LLVM 的 Windows IDE 。我是该插件的主要作者,因此您可以提出与它相关的任何问题。

该插件提供了 Clang 和 llvm-gcc 编译的基本功能,并支持 Linux 和 Windows(带有 Cygwin 和 MiNGW)。LLVM 工具,如汇编器、归档器、链接器和静态编译器 (llc) 已配置并可通过 UI 进行定制。该插件提供了 IDE 可以提供的所有好处,例如简单的配置和一次操作即可构建。

唯一的缺点是它还没有准备好,因为它缺少 LLVM 可以提供的一些高级功能,例如 Clang 分析和智能自动完成。该插件也没有经过很好的测试,可能无法完美运行,因此我希望我可以通过从谷歌代码开发网站(如下所列)找到的邮件列表获得用户反馈。我希望我有时间进一步开发它。我只是在业余时间开发它,非常有限。我欢迎任何开发人员参与并为该项目做出贡献。

开发地点:
http://code.google.com/p/llvm4eclipsecdt/
https://github.com/TuononenP/llvm4eclipsecdt

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

更新:该插件已弃用。而是使用官方 Eclipse 更新站点(例如http://download.eclipse.org/releases/mars)在 Programming Languages 下安装“C/C++ LLVM-Family Compiler Build Support”

于 2011-05-12T13:50:44.077 回答
21

LLVM 贡献者 Dan Gohman 最近向vim添加了 Clang 代码完成功能。

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.el为emacs提供了类似的选项。

于 2010-10-30T01:45:49.907 回答
11

Qt Creator也适用于 Clang...

于 2012-02-25T09:46:35.717 回答
9

现在他们正在添加对 Visual Studio链接的支持。可以在这里下载。

于 2013-09-10T09:28:06.873 回答
5

此外,CodeLite 具有用于智能代码完成的 Clang 后端。请参阅将 clang 代码完成与 CodeLite 一起使用

CodeLite 可用于 Windows,但我尚未在 Windows 下对其进行测试。

于 2012-09-04T16:33:43.080 回答
5

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

Netbeans for java 与编译器集成在一起,因此它会在您键入时给出错误和警告,以及语法正确的代码完成。因此,netbeans 很可能在未来与 clang 集成,为 C++ 提供相同的特性。

于 2010-12-24T04:48:01.113 回答
5

LLVM 支持已添加到Eclipsehttp ://marketplace.eclipse.org/node/28778

于 2011-03-14T08:09:05.430 回答
4

LLVM 提供Windows 快照构建- Visual Studio 作为 Windows 安装程序的 clang 工具集。目前它应该与 Visual Studio 2010、2012 和 2013 集成。更多信息可以在 LLVM 的博客文章A path forward for an LLVM toolchain on Windows中找到。

于 2013-09-29T23:11:00.007 回答
4

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

于 2012-07-08T09:26:02.643 回答
4

KDevelop for Windows 是另一种选择。虽然仍处于早期阶段(您当前需要设置环境才能自己使用 MSVC/MinGW 编译器),但它是可用的,并将 IDE 的出色代码理解带到 Windows。

https://www.kdevelop.org/features

于 2017-11-22T09:08:51.390 回答
3

不。

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

于 2010-05-07T06:41:45.567 回答
3

Clang 有一个(至少应该是)直接替代 gcc 的驱动程序,因此基本上任何可以使用 gcc 作为其编译器的 IDE 也应该能够使用 clang 作为其编译器(尽管我没有亲自测试过,所以我不能保证它的效果如何)。

于 2010-03-21T19:10:20.197 回答
1

不完全是 IDE,而是 IDE 和普通编辑器之间的一种交叉,对于那些不介意手动编写配置的人来说是一个可用的替代方案:Sublime Text 3编辑器和EasyClangComplete插件的组合(加上Clang 格式以保持代码整洁整洁)。由于最近努力使 LLVM MSVC 兼容(截至 2018 年, Clang-cl还能够生成兼容的 .PDB,这对于调试至关重要),因此在 Windows 上运行良好。

更新:截至 2019 年,EasyClangComplete 的一个更好且面向未来的替代方案是通过LSP插件使用Clangd 。

于 2018-11-16T05:06:00.157 回答