Choosing a C++ ide for Linux, 2012

I’ve been working in a Linux project for some months involving Java and C++ development. For the Java side, the choose has always been Eclipse, even when it uses near 1 Gb RAM, it works quite smoothly on a big dependency tree involving Eclipse RCP products and plug-ins.
At a certain point the C++ part grew big and the traditional, used so far combination of gnome-terminal + multiple Vim editors stop being a suitable option. I had around 30 c++ classes with their headers, and the rest of the huge project .H headers (around 1000, yes 1k).
I was tired of open/close vim editors and grep around the whole project tree to find methods and function parameters.
Don’t understand me wrong, I’m a big fan of Vim and I use it every single day to edit files and modify scripts. It’s a wonderful tool, but I think nowadays for certain projects it’s not suitable.

I come from Java world, so I’m used to write code while analysing classes methods at the same time, using Eclipse auto-completion, navigating from one class to another using classical key combinations (F3 on a class name, Ctr-Shift-R to find classes, etc.); without all these, I found Vim slowed me down a lot.

To make it short, I needed a decent IDE for linux so looked for what open source community could offer nowadays:

  • Eclipse Juno for C++ : seems the natural option when developing Java, why not using for C++ as well? Well, the C/C++ parser eats so much memory it becomes unusable. And for each unresolved variable it underscores red the whole line. The Mylyn plug-in started crashing also. Not an option if you want to keep your computer running for days.
  • CodeLite: I tried to make it run on my linux default installation (Suse¬† SLES 11) without success.
  • Gedit:¬† it provides syntax highlighting and that’s all. Too simplistic
  • Geany: it has more options that Gedit, finds variable along the source file and has a handy built-in shell.

I decided for Geany for some weeks, until I realised I hadn’t tried the one that would become the final winner:

  • Netbeans 7.2: my final choose. It provides full c++ syntax support and a lightning fast parser able to handle and navigate through headers without sweating. Really good work. And even ships with a built-in shell terminal shell too.

In conclusion, Netbeans was the winner, don’t think I will change Eclipse over to it on Java development but for C++ it really rocks.

 

Comments 1

  • Thanks very much, Ruben. It’s really great.
    I have been looking for the c++ IDE for several days.
    For NetBeans my only concern is that whether it also provides the capability that list all the head files which are in “classpath” like as Eclipse? If true, perfect!

    I will try this evening (I have no Linux environment in company).
    Thanks again.

Leave a Reply

Your email address will not be published. Required fields are marked *