Linux上的C++集成开发环境

8
我们正试图为Linux上的C++开发选择一个集成开发环境(IDE)。 提出的选项是KDevelop和Eclipse。
Eclipse可以高度自定义,但过于Java中心化且较重。 KDevelop受特定的KDE限制(我相信是因为KDE API),如果需要可能无法替换。
你使用哪个,并且为什么?
谢谢 Dima

在这里,您可以找到另一堆关于相同问题的链接。最佳的Unix/Linux C调试器/IDE是什么? - fortran
14个回答

15

KDevelop的优点是:

  • 支持CMake
  • 与GCC工具完全集成。
  • 拥有良好的语法高亮和代码编辑器。
  • 启动速度相对较快,相对比较轻量级。

由于你在将KDevelop与Eclipse进行比较,让我也指出:

  • KDevelop使用文件作为其项目文件,所以您可以在文件管理器中打开项目文件。相比之下,Eclipse将元数据存储在文件夹中,因此您需要运行Eclipse才能打开您的Eclipse项目。
  • 因为KDevelop将其信息存储在单个项目文件中,而Eclipse使用许多隐藏的元数据,所以KDevelop使您的代码文件夹更加干净。
  • 除非您明确要求,否则KDevelop永远不会试图删除您文件系统上的文件。相反,使用Eclipse很容易意外损坏您文件系统上的文件。

另外,当我使用KDevelop时,我正在使用Ubuntu操作系统,它使用Gnome桌面环境。在Gnome上,KDevelop在启动时间方面仍然优于Eclipse,并且绝对值得使用。

最后一点,如果您在KDevelop中使用CMake,则可以将源代码分发给Windows、Mac和Linux上的用户,并且他们将能够编译您的源代码,即使他们没有安装KDevelop;CMake可以生成本地的Makefile、Visual Studio项目、Xcode项目或KDevelop项目。因此,如果使用了CMake后端,则无需担心无法替换KDevelop。


1
+1 详细回答。FYI,cmake也支持Eclipse。 - dimba

9

我使用Qt Creator,如果你考虑使用Qt,它是很好的选择。不过我发现Eclipse的C++工具也很不错 - 编辑器很稳定,调试“就是这么简单”,所以我很满意!


8
我使用Eclipse,并且非常喜欢它。CDT插件使接口更加友好,适用于C++/C,而Eclipse的可扩展性和其他插件使其成为满足许多需求的“一站式”IDE。我将其用于PHP、Perl、C++、数据库工作和ColdFusion。
在我的观点中,Eclipse最好的功能之一是Mylyn插件。基于任务的过滤对我的工作流程带来了极大的改进。

2
如果未来的项目需要跨平台,Eclipse可以在多个操作系统上使用。 - dewald

7

Emacs :)

可定制性超出你的想象。(并且你可以在代码编译时玩俄罗斯方块)


1
有些人也喜欢使用VIM。 :) - Michael

7
我尝试过CodeBlocks、Netbeans、Eclipse和支持C++和Qt Creator的IDE。Netbeans和Eclipse都可以正常工作,但是它们的默认窗口布局和编辑器设置让我感到“不适”,因为需要删除/最小化更改字体、大小等,以使其读起来更加清晰,因为默认设置占用了屏幕太多空间。这些IDE基于Java,在我的Ubuntu笔记本电脑上(多年来的不同版本)有点卡顿,配备了CD2 2.2GHz处理器和2GB内存。我完全重新安装过发行版,但仍然不知道原因。当打开调试器并且它缓慢地浏览代码时,会感到缓慢和迟钝的感觉,这是最糟糕的。手动浏览函数调用(疯狂点击和控制值),如果你经常这样做(大型项目),IDE将完全减速,每次按下按钮后需要等待3-5秒。
Netbeans似乎特别反对Ubuntu,因为有时它不会相应地缩放窗口,某些设置会重叠在一起,非常恼人。
目前,在这4个IDE中,带有夜间构建的Code Blocks效果最好,因为您只需安装并开始工作,无需修复字体/大小、窗口等。它也是我尝试过的构建/清理项目中最快的IDE,并且在打开/关闭项目、启动程序时响应迅速。
Qt Creator就像一个“Mac应用程序”。它看起来非常漂亮,使用起来很简单,但是当我需要在其中进行调试时,我不喜欢它。它只是缺少其他IDE具有的一些选项。但是,如果您正在开发UI,则强烈推荐它,因为它集成了GUI布局设计师。
我使用的Eclipse版本是5个月前,Netbeans是2个月前,Qt Creator是5个月前,Code Blocks仅有20天,因为我每个月都会更新夜间构建。
如果你现在还没有猜到,那么就是Code Blocks是我在Ubuntu发行版上使用的IDE。
然而,与我同时使用的VS2008相比,这些IDE的最大劣势在于调试部分。VS做得很好,您可以通过将鼠标悬停在代码上来查看向量、字符串等中的值。在查看结构内部时,您还可以跳过所有“不必要”的信息,以便无需按下5个“加号”并展开行即可查看向量中保存的内容。
这些是我在Linux上使用这些IDE的“日常经验”,因为我认为它们比列出每个IDE具有的不同功能更重要。其他所有内容似乎都可以正常工作(我还没有详细测试过每个单独的功能)。希望这至少能在决定选择哪个IDE方面有所帮助。
话虽如此,Kdevelop是我测试清单上的下一个,因为我还没有尝试过它。

3

虽然不是传统的集成开发环境(IDE),但在Linux上,EmacsXemacs可以很好地作为IDE使用,因为它可以设置集成的构建和调试。


1

Code Blocks 是一个选项


1

我认为正确的答案是自己尝试一下两种(或其他)工具。个人而言,我过去三年一直使用Eclipse。我对它感到满意,但也有一些地方我认为可以改进。

但是,我认为你最好安装两种工具并分别尝试一两周(甚至更长时间)。很多时候这取决于个人偏好和口味。这就像2009年的vi或emacs问题 :)


1

我在Eclipse上使用CDT,发现它非常响应。

此外,像Subclipse、Mylyn等插件确实使开发变得更加容易。

我有时会在一些项目中同时使用Java和C++,所以我认为能够在一个IDE中编写Java/JNI/CPP代码可以让生活变得更加轻松。


1

如果你正在寻找一款轻量级的IDE,可以尝试使用vim。通过适当的插件和技巧,它可能非常强大。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接