We trying to choose an IDE for C++ development on Linux. The proposed options are KDevelop and Eclipse.
Eclipse is highly customizable, but Java centric and heavy. KDevelop is bounded to particular KDE (I believe because KDE API) and can not be replaced if required.
What you use and why?
Thanks Dima
KDevelop, because:
- It supports CMake.
- It fully integrates with the GCC utilities.
- It has a good syntax highligher and code editor
- It has a relatively quick startup time and is relatively light weight.
Since you are comparing KDevelop with Eclipse, let me also point out that:
- KDevelop uses a file for its projects, so you can open the project file in your file manager. By contrast, Eclipse stores metadata in folders, so you need to open your Eclipse project by running Eclipse.
- Because KDevelop stores its information in a single project file, whereas Eclipse uses lots of hidden metadata, KDevelop leaves your code folders much cleaner than does Eclipse.
- KDevelop will never attempt to delete files on your filesystem, unless you specifically ask it to do so. By contrast, it is very easy to accidentally harm files on your filesystem using Eclipse.
Also, when I've used KDevelop, I've been using it on Ubuntu which uses the Gnome desktop. On Gnome, KDevelop still beats Eclipse in terms of startup time, and is definitely worth using.
Also, one last note, if you use CMake with KDevelop, then you can distribute your source code to users on Windows, Mac, and Linux, and they will be able to compile your source code, even if they don't have KDevelop; CMake can generate a native Makefile, a Visual Studio project, an Xcode project, or a KDevelop project. So, the concern that you can't replace KDevelop really doesn't apply if you use the CMake backend.
I use Qt Creator, which is excellent if you're considering using Qt. I've found the C++ tools for Eclipse work well though - editor seemed solid, debugging "just worked", so I was happy!
I use Eclipse and like it quite a lot. The CDT plugin makes the interface much more c++/C friendly and the extensibility of Eclipse with other plugins makes it a "one-stop-shop" IDE for many needs. I use it for PHP, Perl, C++, Database work, and ColdFusion.
One of the best things for Eclipse IMO, is the Mylyn Plugin. Task based filtering has been a wonderful addition to my work flow.
Have tried, codeblocks, netbeans and eclipse with c++ support and qt creator.
Netbeans and eclipse work just fine, but their default window layout and editor settings make me "sick" each time when I install them as one needs to remove/minimize change fonts, size etc in order to make it somewhat readable as the default settings are just covering too much of the screen. It's java based and somewhat laggy on my laptop running ubuntu (different versions over the years) on a cd2 2.2ghz with 2gb ram. I have no idea as to why since I completely reinstalled the distro's several times. That slow and sluggish feeling when one opens the debugger and it slowly crawls through the code is the worst. Same when you are manually going through the function calls (clicking like mad and controlling values), and if you do that a lot (big project) the IDE will totally slow down making you wait 3-5 sec after each press of the button.
Netbeans especially seems to have something against ubuntu as sometimes it will not scale the windows accordingly and some settings will overlap each other. Very irritating.
Code Blocks with the nightly build works best right now in my opinion of those 4 as you can just install and start working without need to fix the font/size, windows etc. It is also the fastest IDE of those I have tried in building / cleaning projects and responds fast when opening/closing prjects, starting program.
Qt creator is like an "mac app". It looks visually very nice, it's simple to use but then again I just dislike when I need to debugg in it. It just doesn't have some of the options that other IDE's have. If you are however developing UI then I highly recommend it because of it integrated gui layout designer.
The Eclipse version that I was using was 5 months old, netbeans 2 months, Qt creator 5 months old and Code Blocks only 20days as I regularity update the nightly builds every month.
If you have not guessed it by now, its Code Blocks that I'm using on my ubuntu distro.
Then again the biggest disadvantage with these IDE's when comparing to the VS2008 that I also use is the debug part. VS just has everything done nicely and you can see the values in vectors, strings etc just by hovering the mouse on the code. When looking inside structures you also skip all the "unnecessary" information so that you dont need to press on like 5 "pluses" and expand the lines in order to see what is saved in a vector.
These were my "daily experiences" with those IDE's on linux as I believe they are important than just listing different features that each IDE has. Everything else seemed to work fine (and I haven't really tested every single feature in great detail). Hope that this will at least help somewhat in deciding what you will pick.
Having said that, Kdevelop you are next on my test list as I haven't tried it yet.
Emacs :)
Customizable beyond your wildest dreams. (And you can play tetris while code compiles)
Code Blocks is an option
I think the correct answer is to try both (and maybe others) for yourself. Personally, I've used Eclipse for the past ~3 years. I'm satisfied with it but there are parts that I think could be better.
But, I think your best bet is to install both and try them each for a week or 2 (maybe longer). A lot of this comes to do personal preference and taste. This is the 2009 version of the vi or emacs question :)
I use CDT on eclipse I find it very responsive.
Plus plugins like Subclipse, Mylyn etc really make development a lot easier.
I use Java and C++ together is some projects so the fact I can code Java/JNI/CPP in the one IDE makes life a lot easier in my opinion.
If you are looking for light IDE you can try vim. With appropriate plug-ins and skills it might be very powerful.
QtCreator Eclipse Netbeans KDevelop
Each has strengths and weaknesses, and it'll depend a lot on on what else you're doing.
I have been using QtCreator.
Nice and clean interface (seems snappier than Eclipse - though I have not used it in a while) and supports debugging.
Geany \M/
来源:https://stackoverflow.com/questions/1160294/c-ide-on-linux