Home Page
linux ppc

Linux PPC Kernel

l.u. 17/12/2002

This page is dedicated to the process of building a self-made kernel. With debian this isn't often needed, but this operation keep a good chance to learn something about the way your machine is driven by the OS.

The first step

I like you know what we're talking about when I say "PowerPC", "New World", "RISC" and so on; so please if you don't know what everything these mean, peruse these beautiful pages from debian site.
Done this, you have to walk the first step to build your own kernel. Go getting sources. You have a fork here: get the "last" stable or get the "last snapshot" Consider that under powerpc often a rc
*Tip*: debian release kernel sources direct by apt. You won't use official sources but benh tree, so don't do apt way but follow what's here.

The second step

Once taken sources, you should go into the source top directory. Before compiling, you ought to tell make what to compile. This behaves to the ".config" file. You can edit it by and, but there are some tools that will make this much easier. So, type
	make menuconfig
You can try to make your own configuration. Read the more "help" sections you can the first time and each time you find something new. It will be a long task, but it will worth time spent.
You can then proceed to the build.

*Tip*: errors when making menuconfig? apt-get install libncurses5-dev.

The third step

You have escaped with saving the menuconfig tool and you're ready to compile. You could go the "canonical" way: "make bzImage, make modules, make modules_install, then copy all file in their position, manually edit your bootloader configuration, apply modifies etc etc etc... Long way, isn't it?
Besides, you could think you're using debian. You already know the elegance of debian's packages. So, kernels can be packaged too. You already know the advantages of such a thing, so i won't loose time on this.
How to go this way? You have to use make-kpkg tool provided by the kernel-package suite. Once installed just reach the main kernel tree ("/usr/src/linux-ver" for example) and execute
	make-kpkg binary
You'll get some .deb debian packages in the upper directory, normally "/usr/src/", in the form "kernel-something-version-Custom_arch.deb". What you really need is the something = image package, but it's good you installall the something = headers package too:
	cd ..
	dpkg -i kernel-image-___.deb
	dpkg -i kernel-headers-___.deb
After that you can reboot your machine for get the new kernel running. Of course you'll use dpkg for acting on these packages the same way for the others: --purge, -L etc.

You can contact me by mail.