I get the following error: # emerge =x11-plugins/wmix-3.0-r1 Calculating dependencies ...done! >>> emerge (1 of 1) x11-plugins/wmix-3.0-r1 to / >>> md5 src_uri ;-) wmix-3.0.tar.gz >>> Unpacking source... >>> Unpacking wmix-3.0.tar.gz to /var/tmp/portage/wmix-3.0-r1/work >>> Source unpacked. gcc -O2 -march=athlon-xp -pipe -c -o misc.o misc.c gcc -O2 -march=athlon-xp -pipe -c -o mixer-oss.o mixer-oss.c mixer-oss.c: In function `get_mixer_state': mixer-oss.c:105: error: subscripted value is neither array nor pointer mixer-oss.c: In function `mixer_init': mixer-oss.c:258: error: subscripted value is neither array nor pointer make: *** [mixer-oss.o] Error 1 make: *** Waiting for unfinished jobs.... !!! ERROR: x11-plugins/wmix-3.0-r1 failed. !!! Function src_compile, Line 22, Exitcode 2 !!! (no error message) I do not know if this is the fault of gcc (--version gives "gcc (GCC) 3.3.3 20040217 (Gentoo Linux 3.3.3, propolice-3.3-7)") or that I have linux-headers-2.6.4 installed. However, the following patch makes it work: --- mixer-oss.c.orig 2004-04-12 12:37:50.331573500 -0600 +++ mixer-oss.c 2004-04-12 12:38:31.847763644 -0600 @@ -93,7 +93,7 @@ static bool get_mixer_state(void) { - struct mixer_info mixer_info; + struct mixer_info m_info; int dev_lr_volume, dev_left_volume, dev_right_volume; float left, right; int srcmask; @@ -102,9 +102,9 @@ /* to really keep track of updates */ static MixerChannel oldmixer[SOUND_MIXER_NRDEVICES]; - ioctl(mixer_fd, SOUND_MIXER_INFO, &mixer_info); + ioctl(mixer_fd, SOUND_MIXER_INFO, &m_info); - if (mixer_info.modify_counter == prev_modify_counter) + if (m_info.modify_counter == prev_modify_counter) /* * Mixer state has not changed */ @@ -156,7 +156,7 @@ } mixer[ch].is_recording = ((1 << mixer[ch].dev) & srcmask) != 0; } - prev_modify_counter = mixer_info.modify_counter; + prev_modify_counter = m_info.modify_counter; /* check if this was due to OSS stupidity or if we really changed */ if (!memcmp(&mixer, &oldmixer, sizeof(mixer))) { memcpy(&oldmixer, &mixer, sizeof(mixer)); @@ -223,7 +223,7 @@ void mixer_init(const char *mixer_device, bool verbose) { int devmask, srcmask, recmask, stmask; - struct mixer_info mixer_info; + struct mixer_info m_info; int count; int mask; @@ -255,13 +255,13 @@ exit(EXIT_FAILURE); } - if (ioctl(mixer_fd, SOUND_MIXER_INFO, &mixer_info) == -1) { + if (ioctl(mixer_fd, SOUND_MIXER_INFO, &m_info) == -1) { fputs("error: could not read mixer info\n", stderr); exit(EXIT_FAILURE); } if (verbose) { - printf("%s (%s)\n", mixer_info.name, mixer_info.id); + printf("%s (%s)\n", m_info.name, m_info.id); puts("Supported channels:"); } for (count = 0; count < SOUND_MIXER_NRDEVICES; count++) {
confirmed, i get the same error. using linux-headers-2.6.5: Portage 2.0.50-r6 (default-x86-2004.0, gcc-3.3.2, glibc-2.3.2-r9, 2.6.5-gentoo-r1) ================================================================= System uname: 2.6.5-gentoo-r1 i686 AMD Athlon(tm) XP 2000+ Gentoo Base System version 1.4.10 Autoconf: sys-devel/autoconf-2.58-r1 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -Os -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=athlon-xp -Os -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="ftp://ftp.ndlug.nd.edu/pub/gentoo/ http://mirror.datapipe.net/gentoo ftp://mirrors.tds.net/gentoo ftp://ftp.gtlib.cc.gatech.edu/pub/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow X acpi alsa avi berkdb cdr crypt cups encode foomaticdb gdbm gif gpm gtk gtk2 imlib jpeg libg++ libwww mad mikmod mmx motif mpeg ncurses nls nptl oggvorbis opengl oss pam pdflib perl png python qt quicktime readline sdl slang spell sse ssl svga tcltk tcpd tiff truetype x86 xinerama xml2 xmms xv zlib"
Looks to me like wmix-3.1 does not exhibit the same problem. Anyone else agree?
Definitely... I'm removing the old 3.0 ebuild in favour of 3.1...