On Friday 08 January 2010, Mufit Eribol wrote:
Dear All,
I use a raid card on my Centos 5.4 server. Whenever I updated the kernel, I used to compile drivers of the card for the new kernel. I have done this many times in the past without any problem.
But this time after installing the new kernel files given below, I can not compile the new driver anymore.
The way it should work is that kernel-PAE-2.6.18-164.9.1.el5 contains a symlink "/lib/modules/2.6.18-164.9.1.el5PAE/build" which points to "/usr/src/kernels/2.6.18-164.9.1.el5-PAE-i686" (from kernel-PAE-devel-2.6.18-164.9.1.el5 which also has among other things include/linux/config.h...).
I don't have a machine that runs the 164.9.1 PAE kernel but the packages seems ok on my mirror:
$ rpm -qlp kernel-PAE-2.6.18-164.9.1.el5.i686.rpm | grep build /lib/modules/2.6.18-164.9.1.el5PAE/build
$ rpm -qlp kernel-PAE-devel-2.6.18-164.9.1.el5.i686.rpm | \ grep "/include/linux/config.h" /usr/src/kernels/2.6.18-164.9.1.el5-PAE-i686/include/linux/config.h
You could start by checking the symlink:
$ ls -ld /lib/modules/$(uname -r)/build
..then the contents of the .../include/linux/ dir:
$ ls /lib/modules/$(uname -r)/build/include/linux/
/Peter
kernel-headers-2.6.18-164.9.1.el5 kernel-PAE-devel-2.6.18-164.9.1.el5 kernel-PAE-2.6.18-164.9.1.el5
The make command can not find /include/linux/version.h file with the following error. But the file is already there.
make KERNELDIR= /lib/modules/2.6.18-164.9.1.el5PAE/build grep: /include/linux/version.h: No such file or directory expr: syntax error ../../../inc/linux/Makefile.def:85: *** Only kernel 2.4/2.6 is supported but you use 2.. Stop.
[root@server linux]#locate include/linux/version.h command gives the following result.
/usr/include/linux/version.h /usr/src/kernels/2.6.18-128.1.1.el5-PAE-i686/include/linux/version.h /usr/src/kernels/2.6.18-164.9.1.el5-PAE-i686/include/linux/version.h /usr/src/kernels/2.6.18-92.1.18.el5-PAE-i686/include/linux/version.h
I would appreciate any help.
Thank you. Mufit Eribol