Sunday, September 05, 2004

C++ after Eclipse

I've been hacking on PE some lately. It's been an odd switch going back to c++ and MSDEV 6.0 with all its oddities and its bare bones IDE environment. I've been working in Java and Eclipse for a couple of years now and the environment is just so much more productive. I knew that before but going back really brings it home.

Given I'm such an Eclipse hound now and MSDEV 6.0 is getting long in the tooth, I thought I'd give the Eclipse CDT project a spin. It's certainly easy to install and setup. On Windows I just had to install the Cygwin and Gnu dev tools and unzip the project into my Eclipse 3.0 directory.

Once I had the CDT running I attempted to configure the editor to my liking. Here's where I hit my first sign of disappointments to come. The preferences panel only offers basic color coding options and has none of the automatic formatting goodness of the Java IDE.

Once I had the editor setup I wrote my first little hello world program and tried to compile it. It failed when it couldn't find a make target. This got me a little nervous because I've happily purged most of my make knowledge from memory and didn't relish diving in and refreshing those brain cells. Luckily the CDT offers two modes of working with make: managed projects and standard projects. With managed projects it does all the work and builds the make file. With the standard project you need to do the make file work, you just teach the IDE about the build targets. I had started out creating a standard project (it sounded simpler) when I should have created a managed one. I just created a new managed one and everything worked great.

Once I had some simple code working I switched over and went looking to explore the CDT refactoring capabilities. If you don’t already know, this is where the Java IDE really shines. You can rename classes, methods and attributes and have those changes propagated throughout the project. It’s really an amazing time saver. However, to my great disappointment none of this magic has been carried over to the CDT.

The Eclipse CDT is pretty cool but currently it's not that much different from my old MSDEV. Given that work on the CDT continues I hope to see some of the Java magic make its way into the c++ environment. Until then, given their similarities I probably won’t bother to port the PE project, but I may choose the CDT for any new projects I start.

Post a Comment
The Out Campaign: Scarlet Letter of Atheism