Re: "modconf" sees no modules at all in recompiled kernel
On Tuesday 14 September 2004 06:35, Eric Dickner wrote:
> <snip>----------------------
> Incidentally, if you didn't build your kernel the
> Debian way, did you
> specifically make the modules? If you didn't, you
> won't have modules
> to
> load, even if you specified them in the config.
>
> Justin Guerin
> --------------------------------
>
> No, I didn't. I just followed the instructions that I
> found for recompiling kernels. They didn't mention
> anything about all this. I assumed that the things
> that worked and had been configured under the old
> kernel would be there for the new one. In a lot of
> cases this is true, but not for the drivers and
> modules(!)?
>
> I guess then, my question is, how do I go about
> rebuilding the drivers? Do I run "debconf" again or
> something? It is important to me that I use the
> generic kernel recompile for administrative reasons;
> if getting the debian distribution upgrade package is
> the only way to upgrade in debian then I need to know
> that.
>
> I just thought there would be a way to do it that is
> "distribution agnostic".
>
> ejd
>
Well, generic directions about building your kernel should include
directions on how to build the driver modules.
The configuration of your old kernel can be used to provide information for
your new kernel, but you still have to answer a few questions, as newer
kernels include capabilities that older kernels don't have. A good place
to start is to copy the /boot/config-2.2.20 file as .config in your kernel
source tree, and type "make oldconfig" This will take the answers given in
your old config and apply them to your new config, and only ask you the
questions that are new. I've never heard about anyone configuring a 2.4.27
kernel with a 2.2.20 config, though, so I can't vouch for it working.
Still, if it does work, then you've taken the configuration for the drivers
and modules from your old kernel and applied it automatically to your new
one.
Regardless, if it doesn't work, you can always configure your kernel the old
fashioned way, by answering all the questions yourself. Reading the help
files included will give you a lot of insight into what your kernel can do.
When you've finished configuring the kernel, do a "make modules" and a "make
modules_install". You will then have modules to choose from, provided you
opted to build drivers as modules when you answered the questions in the
configuration section. If you build everything into the kernel, you will
have no modules. Note that as long as you don't change options that you
built into the kernel, you don't have to recompile the kernel after you
tweak your config. That is, if the only changes you made was to mark some
drivers as modules instead of not included, you only need to build the
modules.
Check out these instructions for generic kernel compile instructions. The
document is old, but as far as I know, it still works.
http://www.linuxplanet.com/linuxplanet/tutorials/202/1/
Also, if you are interested in doing things the Debian way, if only to see
how it's different, check out section 9.2 of this page:
http://www.debian.org/doc/FAQ/ch-kernel.en.html
Hope that helps,
Justin Guerin
Reply to: