From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux 2.4.0-test12 i686; en-US; 0.9) Gecko/20010226 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 files. Reproducible: Always 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 /lib/modules/`uname -r`/build/include 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.