Click to See Complete Forum and Search --> : Massive alsa problems with 2.6
BritishNemesis
11-03-2003, 04:03 PM
Well I thought I'd be brainy today and install the 2.6 kernel with alsa support. So I went ahead and did that following these guidlines:
http://kerneltrap.org/node/view/799/3699
And I compiled both the alsa-libs and the alsa-utils prior to install
Next I went and compiled it all... everything went lovely and low and behold I am running a 2.6 test 9 kernel (yes its very fast)
Now I decided I should compile the alsa-driver right? So I went ahead and compiled it... the ./configure went perfectly.... but during the make I get these errors:
************************************************** ************
In file included from /usr/src/alsa/alsa-driver-0.9.8/include/adriver.h:42,
from /usr/src/alsa/alsa-driver-0.9.8/include/sound/driver.h:42, from hwdep.c:22:
/usr/include/linux/modversions.h:1:2: #error Modules should never use kernel-headers system headers,
/usr/include/linux/modversions.h:2:2: #error but rather headers from an appropriate kernel-source package.
/usr/include/linux/modversions.h:3:2: #error Change -I/usr/src/linux/include (or similar) to
/usr/include/linux/modversions.h:4:2: #error -I/lib/modules/$(uname -r)/build/include
/usr/include/linux/modversions.h:5:2: #error to build against the currently-running kernel.
make[1]: *** [hwdep.o] Error 1
make[1]: Leaving directory `/usr/src/alsa/alsa-driver-0.9.8/acore'
make: *** [compile] Error 1
************************************************** ***********
If I try modprobing the soundcard it says:
[root@localhost alsamixer]# modprobe snd-card-intel8x0
FATAL: Module snd_card_intel8x0 not found.
I also tried configuring it through the nifty redhat soundcard detection util with no luck either. What should I do?
mdwatts
11-03-2003, 04:34 PM
Does ./configure have a commandline option to point configure to the correct include directory for the new kernel?
Something like
./configure --with-include=/usr/src/linux-2.4.6-test9/include
hard candy
11-03-2003, 04:46 PM
The alsa drivers are included in the kernel, you can choose alsa and the drivers to be included in the kernel or compiled as a module. You don't need an extra driver unless your sound card is not listed and then it should be a kernel patch, not a separate driver. You may not need alsa libs either.
BritishNemesis
11-03-2003, 04:52 PM
MDWATTS: I think it does have that option but I'm not gonna try it just yet
hard_candy: I compiled the alsa support cause I included the alsa modules (not all of them but all the OSS ones and the intel8x0 module. Is there some configurations I need to do in order to get this to work? It should work by default shouldn't it?
BritishNemesis
11-03-2003, 05:29 PM
Here's what happens when I try to modprobe:
[root@localhost centurion]# /sbin/modprobe snd-intel8x0;/sbin/modprobe snd-pcm-oss;/sbin/modprobe snd-mixer-oss;/sbin/modprobe snd-seq-oss
FATAL: Module snd_intel8x0 not found.
FATAL: Module snd_pcm_oss not found.
FATAL: Module snd_mixer_oss not found.
FATAL: Module snd_seq_oss not found.
The weird thing is that it detects my card if I go to the soundcard detection util... but the moment I try testing it, it gives me the error:
The i810_audio driver could not be loaded.
BritishNemesis
11-03-2003, 05:42 PM
Now here's a question.... I took a look in /lib/modules/2.6.0-test9/ and found two folders... one called build and another called "kernel". Now inside the "kernel" folder there is a folder called "sound". It contains nothing except a single subfolder called "acore" which contains nothing.
In the build folder there is lots of stuff including a "sound" folder that has all sorts of lovely snd-intel8x0 files and other stuff... but I think its just a symlink to /usr/src/linux-2.6.0-test9/sound as thats what it points to...
Now my question is this. How does the OS detect and install these modules? Should they all be in the kernel folder? Is that what its talking about in those errors? How can I correct this?
hard candy
11-03-2003, 07:10 PM
You'll have to recompile your kernel.
When you get to the sound drivers section, you do not want to enable anything OSS, unselect anything you selected in the OSS section. In the Alsa section, you want soundcore (I usually compile it into the kernel since I use it all the time. You want to enable the OSS modules in the ALSA section. Pick your driver that you need and enable it (again I usually compile it into the kernel since I use it all the time) Your driver should be under the PCI section. Make and install the kernel. You need to run "make", then "make modules", then "make modules_install". Copy your kernel from /usr/src/linux/arch/i386/boot/bzImage to /boot. If you have a separate /boot partition, make sure it is mounted and you can access it.
Then after you reboot, if you made modules instead of compiling into the kernel, do "modprobe snd-drivername".
Run "alsamixer" from the command line (it will bring up a graphical mixer) to unmute the sound, sometimes it is just "amixer" and then "set MASTER 100 unmute" and then "set PCM 100 unmute". Depends on the distro.
Read the docs about adding any modules to /etc/module.conf to have them load at start up. Gentoo user docs on their web site have a good ALSA section (just remember the alsa drivers are already installed).
It can get confusing because a lot of the docs are written for the 2.4 kernel where you have to add ALSA, not the 2.6 kernel where ALSA is already in the kernel.
Does that sound about right?:)
BritishNemesis
11-03-2003, 07:23 PM
dood that sounds awesome... just a couple of questions before I proceed:
When you say I don't want to enable anything OSS where exactly do I stop this from happening?
I thought all the sound config related stuff was in the "Sound" section of "Device Drivers"
There are a number of options here including:
Sound card support (checked)
Advanced Linux Sound architecture (checked)
- sequencer supprort (checked)
- OSS API emulation (checked)
- RTC timer support (chekced)
- verbose printk (checked)
- debug (unchecked)
then there are sub menus which include :
Generic Devices
ISA devices
PCI devices (this is where I check off intel8x10 audio modules)
ALSA USB devices
PCMCIA devices
There also is one category for Open Sound System (DEPRECCATED) up one level.
So I'm thinking that what you mean is for me to uncheck the "Sound card support" section as its the only thing checked thats not within the ALSA options. Is this right? Or are there options somewhere else as well?
hard candy
11-03-2003, 09:06 PM
No, you want to enable soundcard support. I was thinking you had enabled a driver in the deprecated OSS section. Also, if you use realtime support in Sound, I'm assuming you have it enabled in the other section (I'm not sure exactly which section that is).
BritishNemesis
11-04-2003, 09:05 PM
Ok so I'll just recompile with that disabled then cause I can't find another section that is relevant. How is it that the kernel installs the ALSA drivers but I don't have to configure them? Whatever happened to ./snddevices??
kevinalm
11-04-2003, 10:02 PM
ls -l /lib/modules/<kernelversionnumber>/build
should show /lib/modules/<kernelversionnumber>/build -> /usr/src/linux-<kernelversionnumber>
where <kernelversionnumber> is the actual kernel version. The compile errors are typical for a broken or incorrect symlink.