Quote:
Originally posted by zigmund555
Ok. Here's some updates:
The EXTRA VERSION in the makefile is set as -test7 by default. Should I change that?
|
Well, if you already have a working -test7 kernel you want to keep, you'd probably want to change it so you don't mess around with a working kernel's sources. Otherwise, I wouldn't think it matters.
Quote:
Originally posted by zigmund555
I'm running module_init_tools 0.9.14 do I need to update?
|
That should be fine.
Quote:
Originally posted by zigmund555
An example error cause during make_modules:
drivers/char/sx.c: In function 'sx_open':
drivers/char/sx.c: 1423: structure has no member named 'tty'
make [2]: *** [drivers/char/sx.o] Error 1
make [1]: *** [drivers/char] Error 2
make: *** [drivers] Error 2
and brings me back to root prompt. I always get this particular error. Some other modules give me errors but it is sporadic.
|
Okay, the reason I don't get this error on my system is because I don't need that particular driver. Just FYI, 'sx' is the module for this driver: "Specialix SX (and SI) card support", and in menuconfig for -test7 kernel this is found in 'Device Drivers --> Character devices --> Non-standard serial port support'. Now, if you absolutely need this module, then you're probably out of luck for the -test7 kernel; you might want to try earlier kernels or wait for the next release, or you could try reading '/usr/src/linux/Documentation/sx.txt' and see if any information there might help. If you don't need it, then just remove the setting.
In general, when dealing with kernel compile errors, you can usually track down the corresponding module/option by looking at the error. As an example, if you were looking at the above error, you can narrow your search field down to some setting in the character devices section. For confirmation, if you're sure the particular driver was compilable in a previous kernel version, you can look for the module in '/lib/modules/
kernelversion' and look at the path to the module for additional hints. Opening up the referenced source file (sx.c in the error above and the corresponding sx.h), you can read the first few lines of comments to hopefully find out the function of that particular module which may narrow down your search even further. In the above example, sx.h and sx.c specified it was a serial driver of some sort. All that is left to do is look at the help screens for any and all related serial options until you've found the source of your problem.
A good rule of thumb, though, unless you're setting up usermode-linux enabled kernel, any errors in the kernel compile process at all will usually mean something will not work or will not work properly. And even setting up usermode-linux, the only "normal" errors that is apparently perfectly harmless are module dependency errors when issuing 'make modules_install'.