# I can't run genkernel anymore

## Progman3K

Hi,

I've been trying to get my install to use my soundcard for about a week now.

I think by constantly emerging and syncing my system, I must have messed something up because what would generally happen was that I would try to configure my kernel manually, and when I would reboot, my network card would not work anymore.

I used to then run genkernel to make it rebuild things, reboot, and my network card would work again.

So I would try running the procedure in the ALSA guide again, and see if I can get the soundcard (soundblaster live) working.

But now, when I try to run genkernel, i get the following:

GenKernel v3.0.1_beta4-3

[32;01m*[0m ARCH: x86

[32;01m*[0m KERNEL VER: 2.4.23

[32;01m*[0m Your kernel does not appear to have loop device support.

[32;01m*[0m Please 'modprobe loop' if it is a module before running genkernel

[32;01m*[0m gen_die(): ----Load loop support----

And now I'm stuck, I can't get my network card to work, nor my soundcard.

Please, help!

----------

## teknomage1

wll time to roll up your sleeves and properly configure the kernel yourself. It's not that hard. cd to /usr/src/linux and type 'make menuconfig' Go through the options and hit '?' when you don't understand something. Activate the items for your network card and your sound support and find the items for looopback as well. Then you can either go back to using genkernel or say "I rock I compiled my own working kernel" 

After make menu config type this 

```
make dep && make bzImage modules modules_install install
```

----------

## foosh

 *teknomage1 wrote:*   

> well time to roll up your sleeves and properly configure the kernel yourself.

 

right on.  this is the best way--period.  why introduce the extra, uncontrollable variable that is genkernel???  it is quite easy to configure the kernel yourself, and this way you'll know that any problems you're having are related to something YOU'RE doing, not a magical black-box script that may or may not be functioning the way you expect it to.  

like teknomage said, just go into /usr/src/<kernel-version>, do a make menuconfig, and go to town.  just make sure to keep your /usr/src/linux symlink pointing to your currently-used kernel sources.  

I'd advise using a 2.6 kernel, and I believe those no longer require "make dep."  so my general (first-time) command for kernel compilation is 

```
make clean bzImage modules modules_install
```

 once you have it built and want to make minor changes to the modules or the kernel, you could just use "make bzImage modules modules_install"

happy gentooing!

----------

## Progman3K

I HAVE been trying to do my own MANUAL configuration of the kernel!

Only EVERY time I do, I end up with non-functional network and soundcards!

So I would run genkernel and it would set everything but the sound card back to working order.

Only now, I can't even do that.

Does anyone know how to get genkernel working again?

I can't figure what the loop device is.

I've enabled the loopback adapter, but it doesn't seem to help.

And the Install guide no longer seems to match the tools I'm using, so it's very hard to know what to do.

----------

## teknomage1

i'd suggest poking around the man pages. The loop device should be under block devices

----------

## Progman3K

Great idea.

Which man pages? There are a few.

----------

## teknomage1

Great question!! Well you could try man -k loop to look for things about loop devices and what they're for, man ifconfig or man modprobe to see about fixing your network card yourself and poke around the readme files in /usr/src/linux/Documentation especially the ones about network devices. If you have lspci on the machine that might be helpful in showing exactly what hardware is installed as well

----------

## Progman3K

OK, cool.

I'll take a look at all of those. Good tips. Thank you.

This is so frustrating...

I mean I had everything BUT the highmem, soundcard and the acceleration on the video-card working.

I mean I have really tried to figure this stuff out: I used the install guide and did a stage1 install from knoppix, and in the end, I had a really stable, optimized system, but no sound or video acceleration.

So I emerged a lot of apps (evolution, gaim and others), and everything worked perfectly, except for the aforemention soundcard, video and extra memory.

Maybe my mistake was using the default values in the kernel config program.

I thought  when I ran 'make menuconfig' it would use the kernel's current configuration as a starting point. I can't tell: does it?

The first problem I encountered was running 'make menuconfig' to enable HIGHMEM support (I have 1.5GB or RAM). After running it and restarting, the network card stopped working.

I've since enabled just about everything, hoping to get the network card working at least, but I've noticed that I may run the configuration and remove soundcard support, then build and install, but the kernel still complains about not being able to load the ALSA modules when it starts up and not being able to bring up eth0... It almost seems like the configuration changes I make have no effect.

When everything is properly configured there's nothing quite as good as Linux, but boy... When you're stuck, you're really stuck...

Oh well, I still think it's better than Windows; at least with Linux, you may eventually arrive at a point where you really do understand how the system works, whereas with Windows, you never will because the source and internal informations are closed.

----------

## Suicidal

While you are running menuconfig just load the old genkernel default config.

On the first page of menuconfig scroll down to >> Load an Alternate Configuration File 

point it to /etc/kernels/default-config

Now go through and custom-tailor it to your hardware. I think it took me 5 or 6 tries before I got mine right the first time. But with the config above it will be just like running genkernel --config only difference will be no initrd and you will have to copy the kernel to /boot/ manually.

----------

## darksaidin

 *foosh wrote:*   

> why introduce the extra, uncontrollable variable that is genkernel??? 

 

Because configuring linux kernels from that unstructured and totally user unfriendly menuconfig pretty much sucks. If this thing would at least automatically resolve dependencies - but no - no time for something as unimportant as that. Leave it to the user to find out that MII is needed for most network cards, that USB support does not work when compiled into the kernel (why even allow it then?) etc etc etc. I could go on forever.

As long as there is no good way for newbies to safely configure a kernel this is definetly not an option. Not everybody want's to compile his kernel 20 times until it finally works - which is what I went through.

 *Progman3K wrote:*   

> Only EVERY time I do, I end up with non-functional network and soundcards!

 

If you have a 10/100 MBit device you'll probably want to use "Generic Media Independent Device Interface" and the driver for your card. afaik, both could be compiled in but will not work unless compiled as module. It never worked compiled into the kernel for me at least. Also make sure you load the module (mine is via-rhine).

----------

## teknomage1

 *Quote:*   

> Because configuring linux kernels from that unstructured and totally user unfriendly menuconfig pretty much sucks. If this thing would at least automatically resolve dependencies - but no - no time for something as unimportant as that. Leave it to the user to find out that MII is needed for most network cards, that USB support does not work when compiled into the kernel (why even allow it then?) etc etc etc. I could go on forever. 

 

What are you talking about? The only module i use is nvidia's drivers. Everything else is compiled in and it works great. I'm not sure what you're talking about modules running better than being compiled in.

----------

## pjp

Moved from Installing Gentoo.

----------

## Suicidal

 *Quote:*   

> Because configuring linux kernels from that unstructured and totally user unfriendly menuconfig pretty much sucks. If this thing would at least automatically resolve dependencies - but no - no time for something as unimportant as that. Leave it to the user to find out that MII is needed for most network cards, that USB support does not work when compiled into the kernel (why even allow it then?) etc etc etc. I could go on forever. 

 

But genkernel doesnt do any of that. All it does is provide a default config with the most common hardware modulized. Even from the install CD it will not detect my nic. The only real added benifits it has is adding bootsplash to the initrd in versions 3+. 

Now I agree that some utility that could scan your hardware and either create a config or print a list of detected modules is needed but genkernel is not that app.

----------

## ColinAnderson

I've had the SAME loop module error with genkernel.  I went to my source directory and did the make menuconfig business and enabled loop under block devices as a module.  Then I did make bzImage modules modules_install install (I'm running 2.6.1-gentoo-r1).  Does that move the appropriate kernel* and initrd* files to the /boot folders (when it's mounted)?  Because I rebooted, and when I try to modprobe loop or run genkernel, I STILL get the error.  Am I missing something?  Thanks.

----------

## hitman200ca

I don't know how everyone else is doing with this currently but I was able

to fix it on my system.  Here are my steps.

The issue is that your CURRENT kernel doesnt support loop devices, 

not the one you are trying to create.

EDIT:   Compiling without genkernel by default does not install the kernel to /boot

            and does not create an initrd image.  That is another potential pitfall.

```

mount /boot

cd /usr/src/linux

make menuconfig

(under block devices find loop device and compile it into kernel (not module))

exit menuconfig

make dep && make bzImage modules modules_install

cp arch/i386/boot/bzImage /boot/kernel-<version>-<type>-<revision>

cd /boot/grub

vi grub.conf

-- make sure you have a load line that load a regular kernel like this (my grub.conf)

title=Gentoo Linux 1.4 (kernel-2.4.22-gentoo-r5)

root (hd0,1)

kernel (hd0,1)/boot/kernel-2.4.22-gentoo-r5 root=/dev/hda4

------

Reboot your system.

Once up again run genkernel all and it should work

```

Goodluck.

----------

