Scientific Linux 4x
Q. Where is the kernel-source rpm?
A. The Scientific Linux 4.x distributions are the start of a new way of packaging kernels. There is no kernel-source rpm. What most people really need are kernel headers, and those are now packaged in kernel-devel, or kernel-smp-devel.
These changes are documented in the release notes, specifically the very
first vendor release notes.
Q. How can I build kernel modules without the kernel-source rpm?
A. This question is answered in the first vendor release notes.
An exploded source tree is not required to build kernel modules
against the currently in-use kernel. Just the corresponding kernel-devel
rpm.
For example, to build the foo.ko module, create the following file
(named Makefile) in the directory containing the foo.c file:
obj-m := foo.o
KDIR := /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
default:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
Issue the make command to build the foo.ko module.
Q. I really want the kernel source, how do I get it?
A. This question is answered in the
first vendor release notes.
Basically, you need to unpack the kernel src.rpm. A src.rpm is used to create new binary rpms.
Please note that when working with the source tarball from the src.rpm that you are working with unpatched kernel code. All of the patches should have been expanded in the same directory as the tarball.