Hello Muli and all,
1. What have I done to deserve this?
Tried to solve the problem with one hand tied behind your back? (the
"no recompiling the kernel" rule).
My problem was not being able to compile a small directory with
drivers, and my case only proves that only playing with the kernel
configuration toys can get you into a mess.
I clearly remember asking during a Haifux lecture, how I get back to
the original configuration, and noone was really sure. I don't think
that there is someone here who can tell me exactly what files are
tampered with during all the makes (could syscalltrack be handy here?
;). All this makes kernel compilation a mysterious adventure, with no
promised way back home. If there was as little as a list of directories
to back up before starting, it would all look different.
Don't take me wrong: I think that the possibility to compile the kernel
is one of the beauties of Linux, and writing in kernel space is
something I know I'll do sooner or later. The problem is that it's such
an unfriendly field, and for no real reason.
c. Run 'make oldconfig; make dep'. This step prepares the intermediary
kernel configuration and build files that are needed for the build
process. Amongst other things, it handles module version.
Thanks. "make oldconfig" was the secret. And a secret it is. Just for
the fun of it, does anyone know exactly what it does? What "old
configuration" are we talking about? And "make dep" afterward fixed it
all.
And you were right about the /boot directory. There are config-files
for each binary to boot, so it seems like the way to just recompile a
certain prebuilt binary is to copy one of these into
/usr/src/linux-x.x.xx/.config . This might be the answer to my original
question: How do I turn things back to where they were? But I haven't
really tried this, though. I might soon.
BTW, I didn't compile the kernel in the end. There was no reason to.
d. Pray.
"O Almighty Makefile, whose ways are unknown to man, have mercy upon me
and give my computer peace, prosperity and harmony. And bootability"
Start with the top level
Makefile and Rules.make, and follow what happens when you run 'make
oldconfig; make dep'.
Yeah, right. I wanted to install a linmodem driver, not explore the
mysteries of makefile, sed and bash, and virtually every possible
system file.
I have only one explanation for all this: Kernel hackers enjoy the
exclusiveness of their status. It's Open Source, but closed society.
You want to join it, fine, but you'll have to go through some
acceptance tests before you can do anything.
Regards,
Eli