2.4.31 Kernel build is go...

As I mentioned yesterday I’m currently playing around with Linux on an embedded PC.

Stage 0: was to get a build environmet set up. That’s complete now and I have a build of the 2.4.31 kernel running whilst I type this.

Getting a build machine set up was pretty painless. I downloaded the evaluation of VMWare Workstation 5 and had hoped to grab a pre-built image from Red Hat but the only images that they have available are enterprise server builds that were around 900->1000mb downloads with no details about what had been installed on them. Instead I went for Fedora Core 4, 4 650mb iso’s later I’m thinking that I should upgrade my broadband …

Fedora installed nicely onto the virtual machine and so far I’m quite impressed. I especially like the way you can run as a normal user and whenever you need to do something that requires root privs it simpy prompts you for the root password and then displays a little warning icon to remind you of the extra power that you have… Why doesn’t windows do that ? ;)

Next on the list was grabbing the appropriate kernel sources. The version of X-Linux that’s actually on the PC at present is this one (r52) which is based on the 2.4.28 kernel. However r53 has just come out and I’ll be upgrading the device to that as soon as I get my floppy cable… R53 is based on 2.4.31 and to enable graphics support I need to rebuild the kernel after setting the appropriate config options. I’ve decided that the R52 -> R53 upgrade is my first priority as the manufacturer is bound to tell me to upgrade as soon as I have any problems, so I might as well do it now. What’s more R53 uses Lilo as the boot loader and I’m more familar with that then the SYSLINUX loader used in R52, I’ll need to have the PC boot into various kernel configs so I’d prefer to be using a loader that I’m used to…

Tech support from the manufacturer implies that the graphics support for the correct chipset (SiS 550)is available as standard in the 2.6.3 kernel and they’re a bit vague about support in 2.4.28 and 2.4.31. So I grabbed all three versions of the kernel source from here with the the intention of first trying 2.4.31.

The manufacturer supplies the kernel .config file, so after finding this page, I did what it said and kicked off a build with the same settings that were used for R53.

Of course the build failed with a compile error that moaned about an incomplete array… I checked the source and found an array that used NR_CPUS… A quick google for NR_CPUS 2.4.31 took me here and I downloaded the patches for 2.4.31 and gcc 4.x that were listed here.

The build has just completed, so I guess it must be time to check my mail and see if the floppy drive cable has arrived…