Thursday, December 14, 2006

Upgrading GnuCash

Gnucash 2.0.3 is out. Since there are some weird stuff in 2.0.2, I did an upgrade to see if the bugs are fixed.

Compilation was really a breeze because the Gnome environment is already up (I am using garnome). All I have to do is to issue the following commands:

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:[path to gnome pkgconfig directories]

export PATH=$PATH:[path to gconftool-2 directory]

./configure --prefix=[path you want]

make;make install
My build was done without any errors after about 20 minutes. During execution there were some warnings from Glib on illegal parameters for the date functions.

I grep'ed the code and opened up a few C files which had the matching string.

The programming style is certainly not defensive: return values not checked, shabby handling of pointers, use of magic numbers, etc.

Some people argue on the ground that checking all these will slow the program down and add overhead. Well, this argument is only valid in very few corner cases where timing is very critical and computing resource is extremely tight. I don't see these conditions exist for most projects, including this one.

Given these folks are working on this project for free, and the fact that some salaried programmers are writing even crappier codes. I can't complain.

No comments: