When "emerge -u world" tries to update alsa-driver to 0.9.3a: gcc -D__KERNEL__ -DMODULE=1 -I/var/tmp/portage/alsa-driver-0.9.3a/work/alsa-driver-0.9.3a/include -I/usr/src/linux/include -O2 -D__SMP__ -DCONFIG_SMP -DLINUX -Wall -Wstrict-prototypes -fomit-frame-pointer -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -DALSA_BUILD -DKBUILD_BASENAME=azt2320 -c -o azt2320.o azt2320.c In file included from azt2320.c:1: ../alsa-kernel/isa/azt2320.c: In function `snd_card_azt2320_pnp': ../alsa-kernel/isa/azt2320.c:146: structure has no member named `dev' ../alsa-kernel/isa/azt2320.c:147: structure has no member named `dev' ../alsa-kernel/isa/azt2320.c:152: structure has no member named `devmpu' ../alsa-kernel/isa/azt2320.c:154: structure has no member named `dev' ../alsa-kernel/isa/azt2320.c:186: structure has no member named `devmpu' ../alsa-kernel/isa/azt2320.c:206: structure has no member named `devmpu' make[1]: *** [azt2320.o] Error 1 make[1]: Leaving directory `/var/tmp/portage/alsa-driver-0.9.3a/work/alsa-driver-0.9.3a/isa' make: *** [compile] Error 1 !!! ERROR: media-sound/alsa-driver-0.9.3a failed. !!! Function src_compile, Line 59, Exitcode 2 !!! Parallel Make Failed Reproducible: Always Steps to Reproduce: 1. emerge sync 2. emerge -u alsa-driver 3. compile error Actual Results: Failed to compile :) Expected Results: Compile correctly thor root # emerge info Portage 2.0.47-r10 (default-x86-1.4, gcc-3.2.2, glibc-2.3.2-r1) ================================================================= System uname: 2.4.20-gentoo-r1 i686 Pentium III (Coppermine) GENTOO_MIRRORS=" ftp://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ http://212.219.56.162/sites/www.ibiblio.org/gentoo/ http://212.219.56.152/sites/www.ibiblio.org/gentoo/ http://212.219.56.131/sites/www.ibiblio.org/gentoo/" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" PORTDIR="/usr/portage" DISTDIR="/usr/portage/distfiles" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR_OVERLAY="/usr/local/portage" USE="x86 oss 3dnow apm avi crypt cups encode gif jpeg libg++ mikmod mmx mpeg ncurses nls pdflib png quicktime spell truetype xml2 xmms xv zlib alsa gdbm berkdb slang readline arts tetex svga ggi tcltk java guile mysql X sdl gpm tcpd pam libwww ssl perl python esd imlib oggvorbis gnome gtk qt kde motif opengl mozilla gphoto2 cdr scanner" COMPILER="gcc3" CHOST="i686-pc-linux-gnu" CFLAGS="-march=pentium3 -O3 -pipe" CXXFLAGS="-march=pentium3 -O3 -pipe" ACCEPT_KEYWORDS="x86 ~x86" MAKEOPTS="-j1" AUTOCLEAN="yes" SYNC="rsync://exolon.internal/gentoo-portage" FEATURES="sandbox ccache"
did you enable alsa in your kernel ?
No, in 2.4 ALSA is not in the kernel. I have sound enabled, all compiled as modules. My kernel config hasnt changed and it worked perfectly with 0.9.2. I just changed to gentoo-sources-2.4.20-r3 and am running it now the the same .config and alsa-driver-0.9.2 emerged with no problems but 0.9.3a fails in the same place.
Yeah, I can confirm that! I could get around this issue by setting the environment variable ALSA CARDS like that: "env ALSA_CARDS='emu10k1' emerge alsa-driver". Thanks to Vincent Verleye, the author of the "Gentoo Linux ALSA Guide".
Setting ALSA_CARDS also fixes it for me but this should be fixed.
Yep, I can reproduce it on one of my boxes. Strangely, it compiles fine on another, with the same kernel and GCC.
struct snd_card_azt2320 { #ifdef CONFIG_PNP int dev_no; struct pnp_dev *dev; struct pnp_dev *devmpu; #endif /* CONFIG_PNP */ }; this is the struct with the missing entries. perhaps enabling PNP in the kernel fixes the issue. i enabled it as a module here,but did not help.
Perhaps the following would be better to allow for PNP module support: struct snd_card_azt2320 { #if defined(CONFIG_PNP) || defined(CONFIG_PNP_MODULE) int dev_no; struct pnp_dev *dev; struct pnp_dev *devmpu; #endif /* defined(CONFIG_PNP) || defined(CONFIG_PNP_MODULE) */ }; Or a shorter version: struct snd_card_azt2320 { #if CONFIG_PNP || CONFIG_PNP_MODULE int dev_no; struct pnp_dev *dev; struct pnp_dev *devmpu; #endif /* CONFIG_PNP || CONFIG_PNP_MODULE */ }; A similar change would be required in all of alsa-kernel/isa/*.c (azt2360.c is just the first one to be compiled!).
I can confirm that this is still true for alsa-driver-0.9.5. I was unable to compile until I enabled CONFIG_PNP in the kernel. Thanks!
closing with 0.9.8