7

在 linux 下工作的带有 gui 的 C++ 的最佳稳定(编辑器和编译器)是什么?

注意:明确不寻找完整的 IDE。

4

16 回答 16

16

我喜欢用Emacs编写代码。它也为 gdb 提供了一个不错的 gui。我最近在处理一些代码片段时拍了一张快照(见下文,它看起来一点也不像 1980 年 :)。

也就是说,还有很多其他优秀的 IDE。我喜欢用于 Java 开发的Eclipse,听说它也有一个不错的 C++ 插件(CDT)。Netbeans最近也适用于 C++。KDevelop是一个支持多种语言的 KDE IDE,目前正在为 KDE4 重写:KDevelop 博客。看起来很有希望。还有一些其他的我无法告诉你它们是怎样的,因为我没有测试过它们,包括Anjuta(用于 Gnome 桌面)和Code::Blocks(用 wxWidgets 编写,它非常跨平台)。如果您想要的只是编译器的 GUI 和符号浏览器,您还可以使用geany,它非常快,并且包括一个嵌入式终端,如 KDevelop。

所有这些都有其起起落落。最好尝试一下,然后再决定。从稳定性来看,我发现 Emacs 很稳定,从不崩溃,Eclipse 也很成熟。Netbeans 获得第三名。它有时会挂起,但总的来说它也很成熟。KDevelop 喜欢(ed)时不时崩溃,但在这方面取得了很大进展。尤其是 3.5 版本确实向前迈出了一大步,感觉比之前的任何版本都成熟。

Emacs 编辑一些代码:

C++ emacs 编辑一些代码

Emacs 调试会话:

C++ emacs 调试

于 2008-12-08T20:53:08.520 回答
11

留在免费的领域,可能是带有 C++ 插件的 Eclipse,否则我使用 g++ + gdb + make + gvim + 其他 gnu 的东西进行编码。结果很棒,但学习曲线很严重。

根据您的编码,还有Qt 设计器和KDevelop,但我没有使用它们。

补充:读回你原来的问题,你似乎想要一些还不是 IDE 的东西(程序列表),尽管它提供了一个 GUI。我不记得任何 gcc 的 GUI,但 gdb 确实有一个名为DDD的 GUI 。因此,您至少在某些时候必须使用控制台。

于 2008-10-02T21:35:55.773 回答
9

Code::Blocks作为 Windows 和 Linux 的 C++ IDE 运行良好。我现在只在工作中使用它(在两个平台上),并且比 Visual Studio 更喜欢它。我发现代码完成也往往工作得更好!

它非常擅长挑选可用的编译器并与 gcc、MinGW 和 Visual Studio 编译器一起使用,它还具有调试功能。

于 2008-10-02T22:06:00.927 回答
4

SciTE是一个很好的“程序员的编辑器”,它是专门为此目的而编写的。它背后的引擎Scintilla也在 IDE 中广泛使用。Linux 上事实上的编译器是GCC,它也是一个非常强大和稳定的编译器。您应该选择 GCC 4 或更高版本以获得更好的 C++ 性能。

SciTE 也具有集成编译器的基本支持(按下按钮并查看编译器的输出、基本代码完成......)。SciTE 最重要的一点是,你必须先编辑它自己的配置,让它成为一个舒适的编辑器。默认情况下禁用许多重要功能,例如行号、文件选项卡、恢复会话。

您还需要熟悉(公认简单的)Makefile格式,以便make用于构建。SciTE + make 无论如何都不能替代一个好的 IDE,但如果你不想使用一个完整的 IDE,它们仍然非常擅长让你保持生产力。

于 2008-10-03T03:06:06.370 回答
3

日食不错。带有它的插件的 Netbeans 也不错。您也可以使用 Kdevelop(非常可配置)。

如果你想 GUI Moranar 提到 QT desiner。还有 Glade(GTK 绑定)和 WxGlade(包括 C++ 在内的多种语言的 wx 绑定)。

于 2008-10-02T21:48:47.477 回答
3

在 Linux 环境中进行开发时,有 2 种方法可供您选择: 如果您想以一体化的方式管理您的项目,您应该选择 KDevelop。

它是迄今为止我使用过的最先进、最稳定的 IDE(在 Linux 环境中)。Code::Blocks、Eclipse CDT、Netbeans 也非常强大,但根据我的经验,KDevelop 拥有其他 IDE 必须提供的一切,甚至更多。但是您应该自己检查其他 IDE,因为这是我的意见。

第二种也是比较耗时的方法是去了解Moranar提到的gnu开发工具链。gcc/g++, make, gdb/DDD, valgrind,(g)vim/scite ... 。出于测试目的,还建议您熟悉 perl 或 bash 脚本等脚本语言。它节省了很多时间......

如果您想快速完成工作,您应该坚持使用 IDE 解决方案,但如果您想成为一个更完整、更有能力的开发人员,请选择 gnu 工具链。到目前为止我还没有后悔过。

ps 如果您选择 scite 作为您的编辑器,请向 ypnos(我上面的那个人)询问他的配置。它拥有您需要的一切,而且对眼睛也很容易:)

于 2008-12-02T13:14:22.040 回答
2

我要把我的两分钱放在这里。我真的很喜欢 KATE(KDE 的一部分)。它是 KDevelop 中使用的编辑器,但不用作 IDE。相反,它有一个内置的命令行,因此您可以自己发出构建命令。在带有 Make 或 Scons 或 Bjam 或其他设置的项目上(很容易为您的项目编写一个简短的 Bjam 文件),您可以直接发出 build 命令。

我喜欢 KATE,因为它具有没有臃肿的 IDE 功能。不幸的是,它没有重构支持,但它确实有一个符号浏览器,我用得不够多。

于 2008-10-03T00:14:24.800 回答
1

我喜欢Linux 和 Windows 上的SciTE

非常轻巧且可定制。

于 2008-10-02T21:55:32.670 回答
1

我建议使用 Eclipse,因为它是一个非常适合初学者使用的 IDE。它也可用于 Windows 和 Linux。最有用的功能之一是自动完成。此外,还有一个大型社区可以回答您对此提出的任何问题。

于 2008-10-02T22:16:27.580 回答
1

Eclipse 和 Netbeans 对于所有支持的语言都非常棒。Eclipse 过去快得多,netbeans 赶上了,而且功能更强大,更干净,支持更多语言。

此外,如果您认为这是一项您不想复制的投资,请使用 Netbeans——他们目前拥有最多的开源编辑器,并且还在增加。

就我个人而言,我更喜欢与环境无关。我了解我需要了解的关于我正在工作的任何环境的知识,而不会过于依赖键绑定和特定的布局技巧,诸如此类。

我仍然遇到使用 emacs 并喜欢它的人(以及一些使用 VI 的人!)。他们觉得自己无法改变,因为他们在学习击键方面的投入很大。对我来说,这似乎有点弄巧成拙(您通过依附于特定的键盘布局来拒绝使用更新/其他工具),但无论如何。

于 2008-10-02T22:43:17.127 回答
0

我不确定您的问题是否完全重复,但这已被讨论过多次。看有关已讨论过的所有其他问答线程的完整列表,此答案。或者选择IDE标签。


编辑:

我想这可能听起来很讨厌,但如果这听起来很粗鲁,我想不出另一种说法,所以提前道歉:

据我所知(如果我错了,我相信人们会纠正我)IDE 和编辑器/编译器组合之间的主要区别在于集成调试器的存在。既然我无法想象在没有调试器的情况下进行严肃的开发工作,为什么不直接说“IDE”并完成它呢?我的意思是你无论如何都需要一个调试器——为什么不把整个东西放在一个包里,然后收工呢?如果您真的不需要调试器,那么请分享您正在进行的开发类型,您只需要编写和编译代码而无需调试它。

我理解“如果你不使用它,就不要为此付费”的理念,但我认为说“好吧,我只需要一个编辑器和编译器,因为我不需要 IDE 的额外开销”是在这种特殊情况下只是一个错误的命题。

于 2008-10-02T21:54:31.050 回答
0

Sun Studio 包括一个完整的 IDE 和一个非常高性能的编译器,可用于 Red Hat(或 CentOS)和 SUSE Linux 平台以及 Solaris。它是免费的,但据我所知,目前还不是开源的。

于 2008-10-02T21:58:33.520 回答
0

KDevelop,代码::块,Eclipse

于 2009-02-05T01:34:59.793 回答
0

SciTE + scite-debug == 我所需要的一切

SciTE:http ://www.scintilla.org/SciTE.html scite-debug:http ://scitedebug.luaforge.net/

于 2009-02-05T01:11:00.403 回答
0

我认为Qt SDK 附带的Qt Creator是最好的选择,整个包现在是 LGPL 并且可以在 Windows、Linux 和 Mac OS 上运行。

于 2009-05-04T12:20:53.927 回答
0

我在 Windows 或 Linux 上使用过的最好的编辑器是SlickEdit。它不是免费的(尽管您可以下载功能齐全的试用版)——但我认为每一分钱都值得。

当谈到 Linux 上的免费/开源编辑器时,我现在使用Geany,而在 Windows 上我使用Notepad++

至于编译器 - gcc 是我选择的编译器。

于 2013-01-17T14:23:53.483 回答