LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Kernel upgrade error advise needed (https://www.linuxquestions.org/questions/linux-newbie-8/kernel-upgrade-error-advise-needed-221298/)

andy18 08-23-2004 09:44 AM

Kernel upgrade error advise needed
 
Hello Guys,

I am trying to upgrade the kernel from 2.4.26 to 2.6.8 and getting the below errors when running the make modules :

Hello,

drivers/usb/image/mdc800.c:327:29: warning: no newline at end of file
drivers/usb/image/mdc800.c: In function `mdc800_usb_waitForIRQ':
drivers/usb/image/mdc800.c:327: `m' undeclared (first use in this function)
drivers/usb/image/mdc800.c:327: (Each undeclared identifier is reported only once
drivers/usb/image/mdc800.c:327: for each function it appears in.)
drivers/usb/image/mdc800.c:327: parse error at end of input
drivers/usb/image/mdc800.c:183: warning: `mdc800_ed' defined but not used
drivers/usb/image/mdc800.c:201: warning: `mdc800_endpoint_equals' defined but not used
drivers/usb/image/mdc800.c:247: warning: `mdc800_usb_irq' defined but not used
drivers/usb/image/mdc800.c:313: warning: `mdc800_usb_waitForIRQ' defined but not used
make[3]: *** [drivers/usb/image/mdc800.o] Error 1
make[2]: *** [drivers/usb/image] Error 2
make[1]: *** [drivers/usb] Error 2
make: *** [drivers] Error 2

root@road [/home/linux-2.6.8]# make modules_install
INSTALL arch/i386/kernel/cpuid.ko
cp: cannot stat `arch/i386/kernel/cpuid.ko': No such file or directory
make[1]: *** [arch/i386/kernel/cpuid.ko] Error 1
make: *** [_modinst_] Error 2

Please advise,

Thanks

amfoster 08-23-2004 11:14 AM

I am sure we will need the steps you took. Did you start with make mrproper? Did you start with an old .config file or a generic one when you ran make menuconfig or xconfig? Were you using brand new source code or were you trying to apply patches? Did you download the mandatory newer versions of your compilers and linking tools?

masand 08-23-2004 03:40 PM

hi
pl. specify ur distribution
also the compilers u r using and from where did u get the kernel source code.
u should try with a code from kernel.org

regards

andy18 08-25-2004 12:22 PM

Hello Guys,

Thanks for the reply :-)

I follow the upgrade installation instruction from this thread :

http://www.linuxquestions.org/questi...icle&artid=150

and I have downloaded the kernel version linux-2.6.8 from kernel.org source tar ball.

So far everything works fine as on the installation thread above until steps 5. I extracted the tar kernel and copy the .config from my old kernel to the new kernel directory . I am a little bit confuse on steps 6 as I dont seems to be able get the directory /configs on my old kernel . Also both the config files kernel-2.4.20-i686.config, kernel-2.4.20-i686-smp.config does not exist on the old directory. I only have the .config file.

I am getting the errors after I run the make modules as on steps 11 . I am not patching the kernel with any patches.

I am running Linux RedHat 8.0 with kernel kernel 2.4.26 installed currently.

Thanks,


Andy

masand 08-25-2004 12:32 PM

hi there
what i did when i went from 2.4 to 2.6 was
i first installed a 2.6 kernel rpm
then i got its working .config file
ran"make xconfig" and then opened up that config file and changed it according to my demands
and this works for me even now...


regards

andy18 08-25-2004 01:08 PM

Hello Guys,

Thanks for the reply. Do I really need the kernel-2.4.20-i686.config, kernel-2.4.20-i686-smp.config to have the kernel compilation to be succeded ?

masand 08-25-2004 02:29 PM

hi
the above kernel .config fils are required so that u cannot miss out on things ,which u do not think are required by ur system,but in fact thay are required

so each time i compile my kernel i load the older config file which was working for me and do some changes accordingly
in ur case
when u run make xconfig,it will pop up a default configuration of the kernel
u should modifuy that according to ur needs if ur well comfortable there

regards
gaurav

andy18 08-25-2004 03:01 PM

Hello Masand,

Thanks for the reply :-) . I have copied out the .config from my old kernel 2.4.26 to the new kernel source directory and run the make oldconfig to go through the new modules added . I turn out to get the following SCSI error :

In file included from drivers/message/fusion/mptscsih.c:68:
drivers/message/fusion/linux_compat.h:11: redefinition of `scsi_device_online'
include/scsi/scsi_device.h:192: `scsi_device_online' previously defined here
drivers/message/fusion/linux_compat.h: In function `scsi_device_online':
drivers/message/fusion/linux_compat.h:12: structure has no member named `online'
make[3]: *** [drivers/message/fusion/mptscsih.o] Error 1
make[2]: *** [drivers/message/fusion] Error 2
make[1]: *** [drivers/message] Error 2
make: *** [drivers] Error 2

The terminal is not running any SCSI drive .Any way I can resolve this ?

masand 08-25-2004 03:14 PM

hi

what command did u run to get this message???

regards

ky-lab_rat 08-25-2004 03:42 PM

if this is during the mkinitrd just add "--omit-scsi-modules" (without the quotes) before the other options and that will stop it.

mkinitrd --omit-scsi-modules /boot/initrd-2.6.x.x.img 2.6.x.x

andy18 08-26-2004 11:46 PM

Hello,

I get the errors when I run the command "make modules"

masand 08-27-2004 12:42 AM

hi
why don't u first install a kernel rpm of 2.6 kernel from

people.redhat.com/arjanv

and once u install this kernel then u can use its make config file,
because using make oldconfig from a conig file of 2.4 kernel willnot serve ur prupose since there have been a lot of changes from 2.4 to 2.6 kernel.
i have myself done the same way
also get he modutils,initscrits packages from the same site

regards

Thetargos 08-27-2004 02:05 AM

You can try to use my .config and extrapolate from there, just make the changes accordingly to your system:
2.6.8.1-config

edit and please use either xconfig (QT based), menuconfig or gconfig (GTK+ based), as make old config or make config may be too cryptic.

andy18 08-27-2004 03:04 AM

Hello Thetargos,

Thanks for that , I will have a try on that and let u know what I got . :D

By the way, I notice in one of your thread you posted that how to create the kernel in binary for distribution.

Quote:


RPM kenrels

You can also build binary distributable versions of you custom made kenrel in the form of RPM packages. If you pay attention to the top level directory of your kenrel sources you will most likely find a file called kernel.spec. These files are used to build RPM packages. A good reason to build bianary versions of the kenrel would be if you have several computers similar to one-another in terms of hardware and sofware confiugrarions, making it easier to build just once the kernel instead of building it on every one of them.

To build an RPM package of your kernel, you need to pass to the make command the argument rpm. Like this:

make rpm

I look into my previous old kernel source directory ( 2.4.26 ) and was not able to get one with the file name kernel.spec. I have tried locate on my whole system and also not able to find it. Do I miss out something ?

Thanks,

Thetargos 08-27-2004 12:44 PM

No, you didn't miss it. For some reason the .spec file was no longer included in the sources (??) and if my memory serves me right, since version 2.6.5 (2.4.23) or 2.6.6 (2.4.25) the make rpm target is no longer valid... I could be wrong, but in any case those were the versions where I first noticed it.


All times are GMT -5. The time now is 03:05 AM.