Summary: | alsa-driver-1.0.7-r4 fails to compile : serialmidi.c:327: error: too many arguments to function | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Julien Cassignol <gentoo-bugzilla> |
Component: | [OLD] Unspecified | Assignee: | Jeremy Huddleston (RETIRED) <eradicator> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | sound |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | x86 | ||
OS: | Linux | ||
URL: | https://bugtrack.alsa-project.org/alsa-bug/view.php?id=766 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Julien Cassignol
2004-12-31 05:41:59 UTC
While trying to emerge alsa-driver, it fails like that : CC [M] /var/tmp/portage/alsa-driver-1.0.7-r4/work/alsa-driver-1.0.7/kbuild/../drivers/serialmidi.o /var/tmp/portage/alsa-driver-1.0.7-r4/work/alsa-driver-1.0.7/kbuild/../drivers/serialmidi.c: In function `tx_loop': /var/tmp/portage/alsa-driver-1.0.7-r4/work/alsa-driver-1.0.7/kbuild/../drivers/serialmidi.c:327: warning: passing arg 3 of pointer to function makes integer from pointer without a cast /var/tmp/portage/alsa-driver-1.0.7-r4/work/alsa-driver-1.0.7/kbuild/../drivers/serialmidi.c:327: error: too many arguments to function make[4]: *** [/var/tmp/portage/alsa-driver-1.0.7-r4/work/alsa-driver-1.0.7/kbuild/../drivers/serialmidi.o] Error 1 make[3]: *** [/var/tmp/portage/alsa-driver-1.0.7-r4/work/alsa-driver-1.0.7/kbuild/../drivers] Error 2 make[2]: *** [_module_/var/tmp/portage/alsa-driver-1.0.7-r4/work/alsa-driver-1.0.7/kbuild] Error 2 make[1]: *** [modules] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.10-gentoo-r1' make: *** [compile] Error 2 Reproducible: Always Steps to Reproduce: 1. emerge sync 2. emerge -Du alsa-driver 3. Going to buy some hope Actual Results: Alsa-driver didn't compile Expected Results: Alsa-driver should compile webslinger src # emerge info Portage 2.0.51-r8 (default-linux/x86/2004.3, gcc-3.4.3, glibc-2.3.4.20041102-r0, 2.6.10-gentoo-r1 i686) ================================================================= System uname: 2.6.10-gentoo-r1 i686 AMD Athlon(tm) XP 2000+ Gentoo Base System version 1.6.8 Python: dev-lang/python-2.3.4 [2.3.4 (#1, Dec 24 2004, 16:59:09)] dev-lang/python: 2.3.4 sys-devel/autoconf: 2.59-r6, 2.13 sys-devel/automake: 1.8.5-r2, 1.5, 1.4_p6, 1.6.3, 1.7.9, 1.9.3 sys-devel/binutils: 2.15.92.0.2-r1, 2.15.92.0.2-r2 sys-devel/libtool: 1.5.10-r2 virtual/os-headers: 2.4.22 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O3 -funroll-loops -maccumulate-outgoing-args -march=athlon-xp -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O3 -funroll-loops -maccumulate-outgoing-args -march=athlon-xp -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms" GENTOO_MIRRORS="http://mirror.etf.bg.ac.yu/gentoo/ http://gentoo.mirror.sdv.fr/" LDFLAGS="" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X acpi alsa apache2 avi bitmap-fonts bmp cdparanoia cdr cdrom chroot css dhcp divx4linux dvd dvdr dvdread flac ftp gif java jpeg libcaca mmx moznocompose moznoirc moznoxft mp3 msn net nvidia opengl pdflib php qt quicktime samba ssl tetex usb userlocales v4l wxwindows xine xv xvid" And by the way : webslinger src # ls -al linux lrwxrwxrwx 1 root root 23 déc 29 19:30 linux -> linux-2.6.10-gentoo-r1/ webslinger src # pwd /usr/src Please try alsa-driver-1.0.8_rc1. I believe it works with 2.6.10. alsa-driver-1.0.8_rc1 ? After an emerge sync, I've got that : webslinger alsa-driver # ls alsa-driver-0.9.8.ebuild alsa-driver-1.0.6a.ebuild ChangeLog metadata.xml alsa-driver-1.0.3.ebuild alsa-driver-1.0.7-r3.ebuild files alsa-driver-1.0.5a.ebuild alsa-driver-1.0.7-r4.ebuild Manifest webslinger alsa-driver # pwd /usr/portage/media-sound/alsa-driver Found it. There was no ALSA_CARDS defined in make.conf It worked with it. But, by the way, why this ebuild doesn't warn about this ? I think I remember it did once ago... We ought to consider it's a bug, as without knowing a little about alsa/portage (or having read the appropriate documentation), we are not supposed to know we need an ALSA_CARDS field in make.conf, at least it's my opinion... there's a note in the 1.0.8_rc1 ebuild. Please sync and try that one. Okay. I've synced, and did emerge -Du world. It still compile fine with ALSA_CARDS set, but without, there's a note (right ! ;-) but also an error while compiling, as follows. It's reproducible every time I do emerge alsa-driver. CC [M] /var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/mixart/mixart.o CC [M] /var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/mixart/mixart_core.o CC [M] /var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/mixart/mixart_hwdep.o CC [M] /var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/mixart/mixart_mixer.o LD [M] /var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/mixart/snd-mixart.o CC [M] /var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/nm256/nm256.o LD [M] /var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/nm256/snd-nm256.o CC [M] /var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/pcxhr/pcxhr.o CC [M] /var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/pcxhr/pcxhr_hwdep.o /var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/pcxhr/pcxhr_hwdep.c: In function `pcxhr_setup_firmware': /var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/pcxhr/pcxhr_hwdep.c:212: error: dereferencing pointer to incomplete type make[5]: *** [/var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/pcxhr/pcxhr_hwdep.o] Error 1 make[4]: *** [/var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci/pcxhr] Error 2 make[3]: *** [/var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1/pci] Error 2 make[2]: *** [_module_/var/tmp/portage/alsa-driver-1.0.8_rc1/work/alsa-driver-1.0.8rc1] Error 2 make[1]: *** [modules] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.10-gentoo-r1' make: *** [compile] Error 2 !!! ERROR: media-sound/alsa-driver-1.0.8_rc1 failed. Please report that problem upstream as I doubt I'll have any time to find/fix it before they do. Report the URL to the bug report here, and I'll follow it. Thanks. Fixed upstream heh... I meant to close this a while ago... it's fixed in 1.0.8_rc1 which is marked stable. I had this error with 1.0.8 and 1.0.8_rc1, but I had ALSA_CARDS in make.conf (I had ALSA_CARDS="all") Seems it doesn't work anymore... I had to put ALSA_CARDS="<list of cards>" And strangely, on another computer I had no ALSA_CARDS (errr. I wrote SOUND_CARDS), but it emerged cleanly. I had this exact problem on kernel gentoo-2.4.28-r5 and alsa-1.0.8-rc1. I have an nforce2 chipset athlon xp mobo w/ the intel8x0 sound set. It does in fact seem to be a problem with the ALSA_CARDS="" line in /etc/make.conf. I originally did not have this line in the file at all. I was using alsa-1.0.7 (stable, r4?). I then went to update alsa on a regular emerge -up world and it kept dying. It was very puzzling. I then added ALSA_CARDS="intel8x0" in /etc/make.conf and alsa-1.0.8 compiled. Developers, please check that you can still compile this ebuild without adding the alsa line to /etc/make.conf. I'm sure this is causing massive confusion to n00bs and seasoned gentooers alike. I would suggest to create either a new bug for this issue or re-open this report. I don't think advising people of adding that line to /etc/make.conf on this obsucre, oft looked over page is a good enough fix. This sounds like a lame fix that only other companies would have in their OS ;) Let's make sure this works out of the box, the first time. Cheers, Rees what about 1.0.8? If that doesn't work, file a bug upstream as this is not a gentoo-specific issue, thanks. Hmmmm. I downloaded the sources from alsa-project.org and compiled manually. I thought I would find a missing option or something... but the compilation went error free. I used the configuration displayed by emerge: # ./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --without-oss --with-kernel=/usr/src/linux --with-build=/usr/src/linux --with-isapnp=yes --with-sequencer=yes --with-cards=all # make [blah blah] ALSA modules were successfully compiled. I have now working with a gentoo-dev-sources-2.6.10-r5 kernel. I tried to emerge alsa-driver-1.0.8_rc1, with ALSA_CARDS=all". It fails... Did I miss something or do the portage build just a configure + make ? Well, I tried on 4 computers, and I have always the same problem. The pcxhr card fails compiling... no idea why since it does when I configure & compile directly the alsa sources. And no idea if it needs some specific kernel option or if it's a CFLAG problem. It's not on Alsa's soundcard matrix (http://www.alsa-project.org/alsa-doc/index.php?vendor=All#matrix). So I searched for the list of cards to put in ALSA_CARDS to have all cards built except this one (at least for alsa-driver-1.0.8_rc1). I found out (with PCI bus only): ALSA_CARDS="seq-dummy, dummy, virmidi, mtpav, serial-u16550, mpu401, serialmidi, loopback, portman2x4, ali5451, atiixp, atiixp-modem, au8810, au8820, au8830, azt3328, bt87x,cs46xx, cs4281, emu10k1, emu10k1x, ca0106, korg1212, mixart, nm256, rme32, rme96, rme9652, hdsp, trident, ymfpci, als4000, cmipci, ens1370, ens1371, es1938, es1968, maestro3, fm801, ice1712, ice1724, intel8x0, intel8x0m, sonicvibes, via82xx, via82xx-modem, vx222, pdplus, hdspm, azx, usb-audio, usb-usx2y" The following ones can be added when the kernel supports: -ISA (Bus options): ad1848, cs4231, cs4232, cs4236, es1688, es18xx, gusclassic, gusextreme, gusmax, interwave, interwave-stb, opti92x-ad1848, opti92x-cs4231, opti93x, sb8, sb16, sbawe, wavefront, cmi8330, opl3sa2, sgalaxy, sscape, msnd-pinnacle -ISA PNP (Device Drivers ---> Plug and Play support): ad1816a, es968, als100, azt2320, dt019x -PCMCIA (Bus options ---> PCCARD): vxpocket, pdaudiocf, vxp440 -Video4Linux (Device Drivers ---> Multimedia devices ---> Video For Linux): fm801-tea575x asihpi : needs a special option in ./configure - prob doesn't work as is in Gentoo. The following cards should work with Firmware loading support in kernel (Device Drivers ---> Generic Driver Options ---> <*> Hotplug firmware loading support), but they don't... no idea why: darla20, gina20, layla20, darla24, gina24, layla24, mona, mia, gina3g, layla3g, indigo, indigoio, indigodj And finally, I couldn't compile these ones: pc98-cs4232, fm801-tea575x, powermac, sa11xx-uda1341, sun-amd7930, sun-cs4231, sun-dbri, harmony I think they are probably architecture specific (powermac, sun-*) |