Red Hat Bugzilla – Bug 30189
Removing /usr/src/linux symlink makes installing kernel modules difficult
Last modified: 2007-04-18 12:31:52 EDT
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux 2.4.0-test12 i686; en-US; 0.9)
The kerenl-source-2.4.1-0.1.9.i386.rpm package has replaced the traditional
/usr/src/linux symlink with a /usr/src/linux-2.4 symlink. This makes it
quite difficult for a third party kernel module to find the kernel include
Steps to Reproduce:
1.Fetch NVIDIA_kernel rpm listed in URL field above
2.run: rpm --rebuild NVIDIA_kernel-0.9-6.src.rpm
Actual Results: The build fails because the -I /usr/src/linux/include
no longer directs the compiler to the correct kernel include files.
Instead the compiler fell back to the include files in /usr/include/linux
which are not suitable for building kernel modules.
Expected Results: The kernel include files should be in
/usr/src/linux/include and the build should produce a new binary package
with a kernel module suitable for the user's machine.
The kernel includefiles for the currently running are ALWAYs at
this has been done by consensus of all the major kerneldevelopers in order
to make it easier for external open source modules to be compiled.
/usr/src/linux was just NOT a reliable way to find the currently running kernel.
This also works for Red Hat 7.0 by the way.