Problem with headers and modules and modutils @ 2.1.29

adavis@saipan.com
Sat, 29 Mar 1997 03:53:16 +1000


I usually do not post to this list, as I am really not very knowledgable,
but I have just lost about four or days off line because of a problem when
trying to compile a new kernel---2.1.29. Through a combination of
circumstances, I managed to paint myself into a corner.

I was using a zip drive, kernel 2.1.14, and I think modules 2.0.8. I
have a mainly Debian notebook (Toshiba T1910) and wanted to install a new
patch to get simultaneous use of the ZIP drive and a printer. The libraries
I had installed are libc4-1.7.14, the Debian package which contains some
kernel headers. I use modules for several key drivers, including ppp and
the pcmcia modem. I had tried to make sure I was up to date with the Changes
file, but may have let the modules package slide.

1. I installed the kernel source on the ZIP drive. This is a borrowed
drive, so I cannot depend upon having the kernel sources around: I copied
the headers from the ZIP drive to /usr/include...

2. I ran make config, answering "y" to the question about kernel versions.

3. I ran make dep. Everything fell apart. This is the first time I
wasn't able to get make dep done pretty easily in two years of compiling the
odd kernel. The make dep tripped over genksyms, as the version I had on
board did not have a "-k" switch.

4. I deftly grabbed the most recent modules package---in fact,
modutils-2.1.23, and compiled, make install. I was having trouble with the
ZIP drive previous to that point. At least five times, I locked up one vc
after the other by reading the ZIP drive. This was a first. Eventually,
when I had the modutils installed, other things started happening.

5. Even though I had installed the most up to date modutils I could
easily find, and I was running a 2.1.14 kernel, no module would install.
Every time, I got messages something like "Older insmod with kernel 2.1.8+",
and every attempt to load got an error in arguments to "init_modules".

6. I booted the 2.0.0 kernel that I keep around, and found that while
some modules gave unresolved symbol messages, a few modules loaded ok.
PCMCIA didn't work in either kernel, but lp was working with 2.0.0.

7. I made an appeal to my ISP to let me FTP some files, and got the
older modules packages, 2.1.13, and tried to compile. It wouldn't compile,
or at least insmod wouldn't compile. There was a reference to a header
file.

8. Through an almost unbelievably grueling exercise, I got a copy of
modules.h from the older debian libc5 package, after which the older modules
2.1.13 package compiles ok, and my machine is back to life. I had FTPd
though netscape on a Windows 95 PC, only to find the disk was corrupt.
After a few gymnastics, I was able to read the dysfunctional debian package
in emacs, gunzip the main archive, then deftly lift modules.h out of the
internal tar file. This made the crucial difference, althought to be sure I
installed the older version of the Debian library files with headers.

Does this mean that running two versions of the kernel will no longer be
possible?


I am somewhat afraid to try to recompile, and in fact I won't for a week
or two. If anyone has any suggestions I would really appreciate them. I
saved the new copy of genksyms, but then again I can at first compile
without answering "y" to the question about kernel versions in the make
config step.

I apologize for the bandwidth and time. Perhaps, though, a few more
comments in the Changes file would clarify some points about the differences
in the headers and the modules stuff? Just a suggestion...

Alan Davis

-- 
 Alan Eugene Davis      Marianas High School      15o 8.8'N       GMT+10        
 adavis@saipan.com      AAA 196 Box 10,001        145o 42.5'E             
                        Saipan, MP  96950                        
                        Northern Mariana Islands       

"An inviscid theory of flow renders the screw useless, but the need for one nonexistent." ------ Lord Raleigh