I posted some earlier stories in the NetAdminTools Desktop area about struggling with GNUCash. I did eventually build up an LFS system, which I’m writing and posting this article from. There is some good information on the LFS site about getting various combinations of software running on LFS in the hints area. In particular, the software in the hints for Gnome and KDE that I haven’t listed below should be installed first. I didn’t even follow the instructions completely for these in the Gnome hint. The prerequisites in the KDE hint I pretty much followed verbatim. KDE is very easy to get running, even with optimizations [CFLAGS=$’-march=i686 -O3′,CXXFLAGS=$’-pipe -O3 -march=i686′], since the only real dependencies are in kde-libs. Compiling XFree86 was easy too. I simply ran Make World and modified my def file for building Fonts. I don’t care about running Gnome, now, but I do want to run the cool new GNUCash. I came up with a much easier way of installing my system than if I stuck with the hints on LFS. I followed this article on installing KDE and the prerequisites first. After that, here is what I did:
I got the tarball binaries of RPM from rpm.org. I used version 4.02. Just extract the tarball in /. I copied needed db1/3 binaries and libraries from my Red Hat 7.1 system just enough to get RPM working, then I installed db2-devel-2.4.14-5, db1-1.85-5, db2-2.4.14-5, db3-devel-3.1.17-7, db1-devel-1.85-5, and db3-3.1.17-7 with RPM. These are Red Hat 7.1 RPMs. Believe me, I tried to hack around with db source, but this just plain works best. Here is an ldconfig -v output from my system. Compile Guile 1.4, and install, but first change libguile/net_db.c line 85:
extern int inet_aton ();
to:
extern in_addr_t inet_aton ();
I installed with ./configure –prefix=/usr, make, make install. I had to edit the top line of /usr/bin/guile-config to point at the correct location of guile (/usr/bin/guile). You need to get Slib (slib2d2.zip) from here, extract it into /usr/local/share and make a symbolic link from /usr/share/guile/slib -> /usr/local/share/slib. I had problems compiling the contrib/minizip zlib version, but found source for unzip here. More info on the Slib trick here.
I installed (in this exact order) glib 1.2.10, imlib-1.9.11, gtk+ 1.2.10, gtk-engines 0.12, libxml 1.8.16, libghttp-1.09, ORBit 0.5.8, audiofile 0.2.2, esound 0.2.23, gnome-libs 1.4.1.2, oaf 0.6.6, gdk-pixbuf-0.11.0, gnome-print 0.29, bonobo 1.0.9, bc-1.06, libgtop 1.0.12, libglade 0.17, GConf 1.0.4, gal-0.11.2, gnome-vfs-1.0.2, control-center-1.4.01, gtkhtml-0.12.0, scrollkeeper-0.2 , (before I compiled Guppi, /usr/include# ln -s libglade-1.0/glade glade), Guppi 0.35.5, g-wrap-1.1.11, and finally GNUCash 1.6.3. I disabled CFLAGS and CXXFLAGS. When you run set, they should be blank (null) or not there at all. All packages were configured with –prefix=/usr –sysconfdir=/etc. The only exceptions were gnome-libs, which I added –enable-prefer-db1, and GNUCash which was just ./configure with no options. I believe that the above order could be continued for a full Gnome system.
I suspect that later releases of Gnome components will work fine with the latest db software from sleepycat. For now, though, I can tolerate some RPM cheats.The above does what I need: run Gnucash 1.6.3, as well as be generic enough so I should be able to continue on with a Gnome installation if I get bored. KDE rocks just fine for now… If KDE freaks, I’ll probably go back down to Blackbox.