views:

1414

answers:

13

It needs to have good code completion support, debugger, and a nice way to browse code (click to go to documentation).

Since I got spoiled by Java IDEs (Eclipse), it would be cool if it supported refactoring, reference search and some form of on the fly compilation, but maybe I'm asking too much.

So far I tried Eclipse C++ plugin, Qt Creator and Code Blocks. Eclipse plugin feels sluggish, Code Blocks has much worse completion then Qt Creator and Qt Creator is great for Qt stuff, but kinda hard to use for free form projects.

What are other options and firs hand experience with them, since trying something for few hours and using something on a daily basis are two different things?

+1  A: 

Anjuta might have Windows port:

http://en.wikipedia.org/wiki/Anjuta

Aiden Bell
There is a cygwin port, but I prefer native ones. It's a pity, Anjuta is really great :-(
milan1612
Forgot to add, I usually use Anjuta inside an Ubuntu VM running on Windows XP.
milan1612
Short of VCS (which is bloated IMHO), switching to Linux is sometimes a good decision for a cross-platform developer. Mind you, I used VIM and occasionally gedit (which is awesome).
Aiden Bell
+2  A: 

I have been using Code Lite for some time now. It provides support for auto completion. It has a code explorer and outline, though I find myself using "find resource" to open files. It has a plugin for UnitTest++ and some primitive refactoring capabilities.

link text

+4  A: 

I'm very happy with Eclipse. It's not fast, but if you get a good enough workstation, it runs just fine, and considering how much your time is worth, a good workstation is actually pretty cheap. It also has a feature list a mile long (good features, not just bullet points), which I tried to summarize in this answer. It's also being actively developed; CDT 5.0 is a huge improvement over 4.0, and the next version (due out this month) adds even more nifty features (like syntax highlighting that can distinguish between overloaded and non-overloaded operators).

Josh Kelley
+1  A: 

SlickEdit is quite good and available for most platforms.

Viktor Sehr
Vim doesn't quite meet all of my IDE needs(project management, switching between files/projects, one button builds for rapid iteration, etc) I've found slickedit support these features and has good vim emulation (not great but honestly not even vim has great vim emulation).
caspin
+1  A: 

I've recently discovered NetBeans for C++. In the past C++ support in NetBeans has been lacking, but the 6.5 version has improved greatly. If you setup your project following guidelines on the NetBeans site, then code completion and debugging work well in Linux with g++ & gdb. I've not tried using NetBeans for C++ on Windows, but I don't think there would be an issue using DevC++, Ming or cygwin with g++ for compilation.

nathan
+4  A: 

Use EMACS. M + / gives you all possible completion from the opened buffers. It has got nice integration with GDB as well.

Appu
I prefer XEMACS.... because sometimes selecting text and copy'ing between windows/desktops is much more intuitive with a mouse.
Ape-inago
(setf x-select-enable-clipboard t)
Dev er dev
+4  A: 

With some tweaking, you can turn VIM into a very good IDE. You can enable tabs for multiple source files in a single buffer, code navigation, and even auto-completion. The example below is for python, but the ideas apply to C++ as well.

http://arstechnica.com/open-source/guides/2009/05/vim-made-easy-how-to-get-your-favorite-ide-features-in-vim.ars

Dan
+2  A: 

I use plan9port's Acme. It only does a few things itself, but provides a very good interface to let any command-line program process any text from any of the tiled windows. So, instead of building all functionality into the editor (eg Emacs), it outsources just about all of it to command-line programs---actually more numerous and written in languages better suited to the tasks at hand than the editor's language (even Lisp).

http://www.faqs.org/docs/artu/ch13s02.html is "A Tale of Five Editors" (read Wily as Acme), from The Art of Unix Programming by Eric S. Raymond.

Jason Catena
+1  A: 

QTCreator rawks and has a great set of libs that are also cross platform.

tim
+3  A: 

I'm a fan of 'Code::Blocks'

Code::Blocks is a free C++ IDE built to meet the most demanding needs of its users. It is designed to be very extensible and fully configurable.

Finally, an IDE with all the features you need, having a consistent look, feel and operation across platforms. - (the site)

Their latest release has been amazing... For a while it was difficult to get it since they only had the RC on their main site. Now that it's been released proper (not just dev snapshots), its much easier to get.

built in Astyle, code completion, and multi-compiler support, all cross platform w/ wxwidgets.

Ape-inago
For quick things, and most of my other programming/web-design stuff, I use notepad++
Ape-inago
I use Code::Blocks I absolutely love it.
wakingrufus
A: 

NEdit along with this package:

http://code.google.com/p/nedit-macro-kit/

It's cross platform, cross language and customization-friendly.

A: 

I'm currently giving Geany a try on gnu/linux, and so far I'm loving it! :] I would otherwise be using Netbeans for C++, but there seems to be a few nasty bugs with their most recent release. Geany gets the job done, at least for now.

playwiz
+2  A: 

recently I did some research for a good C++ Crossplatform IDE:

* Eclipse Galileo with CDT Plugin
* NetBeans 6.7 (which is also the base for the SunStudio IDE)
* CodeBlocks 8.02
* CodeLite 2.x

After all I have decided to use CodeLite 2.x.

Please see this permalink for a Summary: ide discussion