1.
download the source kernel package
2.
unTAR it and 'cd' to unTARed directory
3.
'zcat /proc/config.tgz>.config' or start with 'make menuconfig'
4.
'make all' # to make kernel bineries
5.
'make modules_install' # to make installed modules
6.
'cp arch/i386/bzImage /boot/bzImage-'make kernelversion' # distanation file is suffix from output the 'make kernelversion'
'cp System.map /boot/System.map-'make kernelversion' # distanation file is suffix from output the 'make kernelversion'
7.
'mkinitrd (-c # clean previos initrd file)-k x.x-smp -m ext3 -f ext3 -r /dev/xxx(your root partit is here)
8.
add to lilo.conf at the end of 'initrd = /boot/initrd.gz' and run 'lilo' command