Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 47622 - wmix-3.0-r1 fails (gcc 3.3.3, linux-headers-2.6.4)
Summary: wmix-3.0-r1 fails (gcc 3.3.3, linux-headers-2.6.4)
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Desktop Misc. Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-04-12 11:56 UTC by Jim Ramsay (lack) (RETIRED)
Modified: 2004-07-16 17:03 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jim Ramsay (lack) (RETIRED) gentoo-dev 2004-04-12 11:56:03 UTC
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++) {
Comment 1 James Kyte 2004-05-11 15:05:03 UTC
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"
Comment 2 Jim Ramsay (lack) (RETIRED) gentoo-dev 2004-07-06 08:13:27 UTC
Looks to me like wmix-3.1 does not exhibit the same problem.  Anyone else agree?
Comment 3 Michele Noberasco (RETIRED) gentoo-dev 2004-07-16 17:03:01 UTC
Definitely... I'm removing the old 3.0 ebuild in favour of 3.1...