Fog Creek Software
Discussion Board




Needed: C++ IDE

Happy Friday Morning y'all,

Question. I'm thrown into a C++ project for a while, and I need a good IDE. There's lots of files, lots of classes, etc. The codebase was originally written in emacs, with hand-written makefiles (lots of 'em!).

It's been a while since I've used emacs, and I'm not really up for the learning curve (again). I've been using VI, which I do love, but it just doesn't provide what the later IDE's can do for me; especially when it comes to learning a new code base.

I am on the Linux platform, and am looking for something that can pull in the existing makefiles, and create a project based on that. I DON'T want to have to create a blank project, pull in various files, and have to update some .xxx-project file at a later time. I've tried KDevelop 3, but I'm finding the interface really uncomfortable. This is cross-platform lower-level console app stuff, no fancy GUI editor required.

Is there something out there that can meet this need? There's other people working on small pieces of this project with emacs/vi, and I don't want to mess with anybody else's turf. CVS integration is not desired; I'd rather do that by hand. UML reverse-engineering would be gravy, and not a requirement at all (but nice).

Free (as in beer) is preferable, although I do have some budget leeway if absolutely necessary.

Thank ya.

Tomorrow's question: Where have the open-source folks been getting all that free beer???

Edward
Friday, June 18, 2004

http://www.viksoe.dk/code/bvrde.htm

RP
Friday, June 18, 2004

Thanks, but that looks like a windows app. I'm on linux.

Edward
Friday, June 18, 2004

You may want to try the CDT from Eclipse.  http://www.eclipse.org/cdt/

joev
Friday, June 18, 2004

joev, I did take a quick look at it, but I didn't seem to find the minimal behaviour I'm looking for. It would be great if it is there, since I'm using eclipse already for some Java work.

Do you know if I can quickly populate a project based solely on an existing makefile? I probably haven't looked into it enough, but it seems that eclipse always creates new projects in some workspace directory somewhere else, instead of using my existing directory structure.

Edward
Friday, June 18, 2004

I read that this was a pretty cool IDE: http://anjuta.sourceforge.net/ it has code folding.

somemorone
Friday, June 18, 2004

<>Do you know if I can quickly populate a project based solely on an existing makefile? <>

Write a pluging for you favourite IDE?

somemorone
Friday, June 18, 2004

Thanks somemorone, I'll have a look at that.

Edward
Friday, June 18, 2004

I'll second the recommendation for Anjuta.  I just started using it, and found it to be excellent. It respects and even uses my Makefile and doesn't get bent out of shape if I do some things from the command line.  You do need to make sure you've got a big screen to use it comfortably; my 800x600 laptop screen is a little tight.  But it snarfed my files in nicely and the editor works well.  It has an intellisense-like feature (in that sometimes it's just a shot in the dark and not based on the actual object definition) that's nice.

I'm sticking with vi/emacs for the bulk of my work, but I have one project which seems to mandate that edits take place in at least three files at once, making this interface a lot more practical.

Clay Dowling
Friday, June 18, 2004

I was in the same boat a couple months ago.  I've been doing Visual C++ dev work for about 8 years (since *gasp* 1.52), but have recently been working more on linux.  I started out looking around a C++ ide for Linux.  I tried kdevelop, anjunta, and even consider going to the mac for their new dev tools.  In the end I ended up back on a heavily modified emacs based on this config:

http://www.dotemacs.de/dotfiles/JanBorsodi/JanBorsodi.emacs.html

You'd be amazed at what this configuration can do.  I've rebound all my keyboard settings to be similar to Visual Studio (f7 compile f9 set break point f10 step, etc.), and I'm pretty much rocking and rolling with it.  Once you get it dialed in, it pretty much thinks for you.  I'm pretty happy using emacs yet again.  Everytime I think my emacs days are numbered, I come back to it, and love it more.

There is some project support in Jan's config, but I'm not totally sure how it  works.  I'm currently just editing makefiles by hand, although that is my biggest beef against emacs for development.  There still isn't a really good way to manage makefiles.  But then again Visual Studio is fine until you want to do something complicated, then it falls apart anyway. 

christopher baus (www.baus.net)
Friday, June 18, 2004

Couple thoughts on Anjunta.  I liked it the best out of the Linux IDEs I tried.  It by far has the best autoconf support I've seen in a GUI.  But it kept crashing when I was in the middle of a debugging session.  It drove me nuts.  There is nothing worse than to be in hot pursuit of a bug only to have the tools fail, and loose your train of thought.  That combined with the fact that I sometimes like to work from the terminal window sent me back to emacs.  I am now more productive with gud and gdb than I ever thought possible.    I can understand why a lot people don't like emacs, but I still think it is the best thing going for Unix development.

christopher baus (www.baus.net)
Friday, June 18, 2004

Yeah, part of me just wants to pick up emacs again, but I have this nagging fear of commitment.

Besides, I already use vi/vim for some other stuff (no choice), and my brain can't handle the keystroke overload that using both would cause!!!

Edward
Friday, June 18, 2004

vim
http://www.vim.org/

Doug Withau
Friday, June 18, 2004

Slick Edit is worth the money. It has a VI emulation mode too, though not as good as the real thing.

Alternatively if you just want to get your head around some code then try Source Navigator to get the big picture and stick with Vi/Vim for down-and-dirty editing. Don't forget to use ctags (obviously!) and try the taglist plugin for Vim.

_
Friday, June 18, 2004

*  Recent Topics

*  Fog Creek Home