This might not necessarily be a gentoo bug. I decided to post it anyway though. I am currently using a 2.5.66 kernel. My symlink at /usr/src/linux points to the 2.5.66 source. When I try compiling alsa-driver I get this: <SNIP> config.status: creating include/version.h config.status: include/version.h is unchanged if [ ! -d include/sound -a ! -L include/sound ]; then \ ln -sf ../alsa-kernel/include include/sound ; \ fi cp -auvf include/version.h include/sound/version.h `include/version.h' -> `include/sound/version.h' make dep make[1]: Entering directory `/var/tmp/portage/alsa-driver-0.9.2/work/alsa-driver-0.9.2' make[2]: Entering directory `/var/tmp/portage/alsa-driver-0.9.2/work/alsa-driver-0.9.2/acore' make -C ioctl32 fastdep make[3]: Entering directory `/var/tmp/portage/alsa-driver-0.9.2/work/alsa-driver-0.9.2/acore/ioctl32' gcc -M -D__KERNEL__ -DMODULE=1 -I/var/tmp/portage/alsa-driver-0.9.2/work/alsa-driver-0.9.2/include -I/usr/src/linux/include -O2 -mpreferred-stack-boundary=2 -march=i686 -DLINUX -Wall -Wstrict-prototypes -fomit-frame-pointer -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -DALSA_BUILD hwdep32.c ioctl32.c pcm32.c rawmidi32.c seq32.c timer32.c > .depend In file included from /usr/src/linux/include/linux/irq.h:19, from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/interrupt.h:9, from /var/tmp/portage/alsa-driver-0.9.2/work/alsa-driver-0.9.2/include/sound/timer.h:27, from ../../alsa-kernel/core/ioctl32/seq32.c:25, from seq32.c:2: /usr/src/linux/include/asm/irq.h:16:25: irq_vectors.h: No such file or directory In file included from /usr/src/linux/include/linux/irq.h:19, from /usr/src/linux/include/asm/hardirq.h:6, from /usr/src/linux/include/linux/interrupt.h:9, from /var/tmp/portage/alsa-driver-0.9.2/work/alsa-driver-0.9.2/include/sound/timer.h:27, from ../../alsa-kernel/core/ioctl32/timer32.c:25, from timer32.c:2: /usr/src/linux/include/asm/irq.h:16:25: irq_vectors.h: No such file or directory make[3]: *** [fastdep] Error 1 make[3]: Leaving directory `/var/tmp/portage/alsa-driver-0.9.2/work/alsa-driver-0.9.2/acore/ioctl32' make[2]: *** [_sfdep_ioctl32] Error 2 make[2]: Leaving directory `/var/tmp/portage/alsa-driver-0.9.2/work/alsa-driver-0.9.2/acore' make[1]: *** [dep] Error 1 make[1]: Leaving directory `/var/tmp/portage/alsa-driver-0.9.2/work/alsa-driver-0.9.2' make: *** [include/sndversions.h] Error 2 !!! ERROR: media-sound/alsa-driver-0.9.2 failed. !!! Function src_compile, Line 59, Exitcode 2 !!! Parallel Make Failed Maybe alsa-driver is not cut out for 2.5.x kernel headers. Maybe it should use the headers at /usr/include/linux? Maybe it is not needed at all on a 2.5.x system? It is a problem though if I am unable to compile it without having a whole 2.4.x kernel source tree on my disk.. Regards theDevil- (who doesnt know a thing about alsa and sound but just likes to post bugs about it)
I have no clue about this error but... isn't alsa already included in development kernels?
This is taken from ALSA official website at http://www.alsa-project.org/ "The ALSA drivers are provided in the two ways. One is the the trees provided as a tarball or via cvs from the ALSA's ftp site, and another is the 2.5 (or later) Linux kernel tree. To synchronize both, the ALSA driver tree is split to two different trees: alsa-kernel and alsa-driver. The former contains purely the source codes for the Linux 2.5 (or later) tree. This tree is designed only for compilation on 2.5 or later environment. The latter, alsa-driver, contains many subtle files for compiling the ALSA driver on the outside of Linux kernel like configure script, the wrapper functions for older, 2.2 and 2.4 kernels, to adapt the latest kernel API, and additional drivers which are still in development or in tests. The drivers in alsa-driver tree will be moved to alsa-kernel (eventually 2.5 kernel tree) once when they are finished and confirmed to work fine." The last sync that happened between alsa-driver and 2.5 source tree was apparently with alsa-driver 0.9.0beta11. This is interesting because the +alsa use flag in gentoo makes portage insist on including alsa-driver in the depends even if it is already on the system via the 2.5 kernel. This should be fixed, or at least some strategy or guideline should be forged now. Especially before Linus wakes up one morning and decides to release 2.6.0, because then a heap of people are going to stand with this problem.
see bug 14907
The alsa drivers are already included in the 2.5.66 kernel. Therefore, you should have no need to 'emerge alsa-driver'. Of course, this does not apply to alsa-utils etc.. In your kernel configuration, look under: Sound -----> Advanced Linux Sound Architecture (alsa) ----> and select the options you need. I compiled in: Sequencer Support OSS API Emulation (don't know if I actually need this) OSS Mixer API (ditto) OSS PCM (ditto) OSS Sequencer (ditto) RTC Timer support and under PCI devices ----> C-Media 8738 (my mobo sound chip - your sound chipset goes here) Disclaimer: I am not a Gentoo developer. If you are converting completely to the new kernel, you should also do 'rc-update del alsasound default'.
This is *not* a kernel issue, for the reasons which Guy stated. Rather this is an issue with the alsa ebuild itself. So the more appropriate thing would be to fix the Alsa depends and the startup scripts to be more 2.5 friendly. I am removing the kernel list from the CC. Also, by checking: http://linux.bkbits.net:8080/linux-2.5/ChangeSet@-2w?nav=index.html I have learned that Alsa 0.9.2 was, indeed, merged into the kernel 12 days ago. Furthermore, this took place prior to the release of 2.5.66. So, for the latest Alsa release, use 2.5.66 :-). Be aware, though, that changes to the ISA-PNP api will cause some of the isa drivers to fail to compile. Bring it up on the LKML and someone will probably send you a fix or just wait until someone fixes it.
I had the same problem and searched and found this : http://bugs.gentoo.org/show_bug.cgi?id=14907 It seems that Heinrich Wendel is saying there that we don't need alsa-drivers if we're running kernel 2.5. So I simply did : emerge inject media-sound/alsa-driver-0.9.2 Problem solved (temporarily ;)
sorry, just read the comments before mine and noticed mine is entirely redundant. i'll be quiet now. :)
Tested in 2.6.0-test1 and it fails also.
perhaps alsa should become a virtual package like x11 ??? That way ebuilds can be made happy regardless of the kernel version. Will require a lot of patching in the entire tree of course. But it would be much cleaner.
To summarize: I don't think that the alsa-driver package is meant to compile against the 2.[56] headers. If you have the headers from 2.5 or 2.6 headers installed, then, perhaps, you should also be using a 2.5 or 2.6 kernel, in which case you don't need to have the alsa-driver package installed at all. Any packages that depend on alsa-driver should be fixed to depend on virtual/alsa instead. The bug 14907 is tracking the issue with the development kernels needing to provide virtual/alsa. I'm closing this as WONTFIX.