Steps to build kaffepc under linux: 1. Prerequisites As linux systems usually carry all the gnu utilities (gcc, sed, patch etc.) the only thing you may have to install in order to build kaffepc is the jdk, version 1.1.x or 1.2.x (i use 1.1.7) and maybe zip/unzip (apart from the djgpp cross compiler - see next) 2. Setting up the djgpp cross compiler: get the following files: gcc-2.7.2.tar.gz binutils-2.7.tar.gz (from your favorite gnu archive) djcrx201.zip (from your favorite djgpp archive, in v2tk/old) (I keep copies on my home page: http://www.ci.tuwien.ac.at/~grill/kaffepc.html) A word - you may (and most certainly will) try to use some newer versions of the gnu stuff. At least, this will need some tweaking - I tried gcc 2.8.1 and failed miserably (maybe 2.7.2.1 works - I'm told that 2.7.2 had a few serious bugs, in particular structure packing doesn't work in C++ - but the one we're building is C only anyway, at least as it comes out of the box, so who cares anyway. As for djcrx, there is a newer (202) verison available, but I recommend against it - I (inadvertently) used it for my first few builds, and lost a bit of hair [long troublesome story omitted - mail me for details]. As far as I understand, there was a change in the startup/crt0/dpmi interface that just happens to be incompatible with the way kaffepc handles the ugly low-level details. Create a directory for the source (henceforth called the `base directory') cd to your base directory and: unzip -a djcrx201.zip tar -zxvf gcc-2.7.2.tar.gz tar -zxvf binutils-2.7.tar.gz copy everything from the `cross' subdir up into the base directory apply the library patch: patch -p0 patch.lib edit the top level Makefile: set the PREFIX variable to where your executables are supposed to go (I suggest /usr/local; that's what I use) now make all have some coffee (my AMD 400 took about 5 minutes, so you may be able to figure out if you can go out to lunch or just have an Al Bundy-style encounter) make install Now, go ahead and play around with your new compiler a bit, trying out all those great pieces of programming wisdom ("Wello Hurld!"), and come back later to 3. Compiling kaffepc 3.1 Setting up the sources You can get them as kaffepc-1.0.b3.tar.gz from the official Kaffepc Web site, or take kaffepc.tgz from my homepage. Again, create a `base directory' and there tar -zxvf kaffepc-1.0.b3.tar.gz this will give you a nice directory tree under /kaffepc-1.0.b3 (those of you who read ahead - yes, you were right in NOT creating a base dir) Now, take the patch "patch.linux" from my site and apply it (from /kaffepc-1.0.b3 - thats where everything else is going to happen) patch -p1