Summary: | emerge of alsa-tools fails with syntax error because of kernel header changes in 2.6.3, specifically __attribute_const__ | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Patrick H. <phemmer> |
Component: | [OLD] Core system | Assignee: | Jeremy Huddleston (RETIRED) <eradicator> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | adrian, aent, craig, deque, erik_swanson, g1gsw, gentoobugs, hiroru, joe, kirtis_b, larry, quetschke, radek, robert.w.thomas, root, sbriesen, sound, tt |
Priority: | High | Keywords: | Inclusion |
Version: | unspecified | ||
Hardware: | x86 | ||
OS: | Linux | ||
URL: | https://bugtrack.alsa-project.org/alsa-bug/bug_view_advanced_page.php?bug_id=0000105 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
emerge output
Ebuild for patch to get this to compile with the 2.6 series kernel. Patch to get this to compile with kernel 2.6 |
Description
Patrick H.
2004-02-18 16:02:46 UTC
Created attachment 25886 [details]
emerge output
well, it's good to know alsa-tools compiles for someone on 2.6.2 atleast... I'll look into a solution... I get the same error with alsa-tools-1.0.3 and gentoo-dev-sources-2.6.3-r2. Output from "emerge -u alsa-tools": [snip] configure: creating ./config.status config.status: creating Makefile config.status: executing depfiles commands if gcc -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"sbiload\" -DVERSION=\"0.3.0\" -DSTDC_HEADERS=1 -DHAVE_LIBASOUND=1 -I. -I. -I/usr/include/fltk-1.1 -march=athlon-xp -O2 -pipe -I/lib/modules/2.6.3-gentoo-r2/build/include -I/lib/modules/2.6.3-gentoo-r2/build/include -MT sbiload.o -MD -MP -MF ".deps/sbiload.Tpo" \ -c -o sbiload.o `test -f 'sbiload.c' || echo './'`sbiload.c; \ then mv -f ".deps/sbiload.Tpo" ".deps/sbiload.Po"; \ else rm -f ".deps/sbiload.Tpo"; exit 1; \ fi In file included from /lib/modules/2.6.3-gentoo-r2/build/include/sound/ainstr_fm.h:29, from sbiload.c:23: /lib/modules/2.6.3-gentoo-r2/build/include/asm/byteorder.h:14: error: syntax error before "__u32" /lib/modules/2.6.3-gentoo-r2/build/include/asm/byteorder.h:28: error: syntax error before "__u64" In file included from /lib/modules/2.6.3-gentoo-r2/build/include/linux/byteorder/little_endian.h:11, from /lib/modules/2.6.3-gentoo-r2/build/include/asm/byteorder.h:57, from /lib/modules/2.6.3-gentoo-r2/build/include/sound/ainstr_fm.h:29, from sbiload.c:23: /lib/modules/2.6.3-gentoo-r2/build/include/linux/byteorder/swab.h:133: error: syntax error before "__u16" /lib/modules/2.6.3-gentoo-r2/build/include/linux/byteorder/swab.h:146: error: syntax error before "__u32" /lib/modules/2.6.3-gentoo-r2/build/include/linux/byteorder/swab.h:160: error: syntax error before "__u64" make: *** [sbiload.o] Error 1 !!! ERROR: media-sound/alsa-tools-1.0.3 failed. !!! Function src_compile, Line 61, Exitcode 2 !!! make failed Alsa driver is not required for the 2.6.3 series...the driver is allready inside the kernel. "Alsa driver is not required for the 2.6.3 series...the driver is allready inside the kernel." That's not true for every card supported by Alsa. I am using an Aureal Vortex 2, which is supported in the laatest version of Alsa (1.02c, I believe), but is not yet in the kernel (which I believe is .99 Alsa code? not sure on this...). There are several other cards that this is true for. In any case, I believe that alsa-tools is still required if you don't want to / cannot use oss emulation and you use alsa, regardless if it's the kernel-included Alsa or the seperate package. I created a bug for this upstream. If you could monitor that bug and provide info for them, it would greatly help as I cannot test out 2.6.x related problems. https://bugtrack.alsa-project.org/alsa-bug/bug_view_advanced_page.php?bug_id=0000105 *** Bug 34929 has been marked as a duplicate of this bug. *** You can always use the latest mm patch set for the 2.6.x series...it is after all one of the best patch sets available out there. Plus it makes your system much more stable and quicker than the stock 2.6.x kernel. This is not the only solution, but if you are a desktop only user and not a server i strongly recommend going for this patches. Kostas, are you saying the latest mm-sources fixes this problem? If so, what is the exact version change that fixes it? Got the same issues. Applies seemingly also to 2.6.2-rcs. The latest mm-sources do not fix this bug. Mine breaks the same way while attempting to emerge alsa-tools-1.0.3. cat /proc/asound/version Advanced Linux Sound Architecture Driver Version 1.0.2c (Thu Feb 05 15:41:49 2004 UTC). Compiled on Mar 1 2004 for kernel 2.6.4-rc1-mm1 (SMP). configure: creating ./config.status config.status: creating Makefile config.status: executing depfiles commands if gcc -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"sbiload\" -DVERSION=\"0.3.0\" -DSTDC_HEADERS=1 -DHAVE_LIBASOUND=1 -I. -I. -I/usr/include/fltk-1.1 -Os -march=athlon-xp -m3dnow -msse -mmmx -pipe -fomit-frame-pointer -falign-functions=4 -I/lib/modules/2.6.3-gentoo-r2/build/include -I/lib/modules/2.6.3-gentoo-r2/build/include -MT sbiload.o -MD -MP -MF ".deps/sbiload.Tpo" \ -c -o sbiload.o `test -f 'sbiload.c' || echo './'`sbiload.c; \ then mv -f ".deps/sbiload.Tpo" ".deps/sbiload.Po"; \ else rm -f ".deps/sbiload.Tpo"; exit 1; \ fi In file included from /lib/modules/2.6.3-gentoo-r2/build/include/sound/ainstr_fm.h:29, from sbiload.c:23: /lib/modules/2.6.3-gentoo-r2/build/include/asm/byteorder.h:14: error: syntax error before "__u32" /lib/modules/2.6.3-gentoo-r2/build/include/asm/byteorder.h:28: error: syntax error before "__u64" In file included from /lib/modules/2.6.3-gentoo-r2/build/include/linux/byteorder/little_endian.h:11, from /lib/modules/2.6.3-gentoo-r2/build/include/asm/byteorder.h:57, from /lib/modules/2.6.3-gentoo-r2/build/include/sound/ainstr_fm.h:29, from sbiload.c:23: /lib/modules/2.6.3-gentoo-r2/build/include/linux/byteorder/swab.h:133: error: syntax error before "__u16" /lib/modules/2.6.3-gentoo-r2/build/include/linux/byteorder/swab.h:146: error: syntax error before "__u32" /lib/modules/2.6.3-gentoo-r2/build/include/linux/byteorder/swab.h:160: error: syntax error before "__u64" make: *** [sbiload.o] Error 1 !!! ERROR: media-sound/alsa-tools-1.0.3 failed. !!! Function src_compile, Line 61, Exitcode 2 !!! make failed gentoo-dev-sources-2.6.3-r2 fails with alsa-tools-1.0.3 too. Aditional info on my system /lib/libc.so.6 GNU C Library stable release version 2.3.3, by Roland McGrath et al. Copyright (C) 2004 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Compiled by GNU CC version 3.3.3 20040217 (Gentoo Linux 3.3.3, propolice-3.3-7). Compiled on a Linux 2.6.1 system on 2004-02-27. Available extensions: GNU libio by Per Bothner crypt add-on version 2.1 by Michael Glad and others NPTL 0.60 by Ulrich Drepper BIND-8.2.3-T5B NIS(YP)/NIS+ NSS modules 0.19 by Thorsten Kukuk Thread-local storage support included. Report bugs using the `glibcbug' script to <bugs@gnu.org>. emerge info Portage 2.0.50-r1 (default-x86-1.4, gcc-3.3.3, glibc-2.3.3_pre20040207-r0, 2.6.3-gentoo-r2) ================================================================= System uname: 2.6.3-gentoo-r2 i686 AMD Athlon(tm) 4 processor Gentoo Base System version 1.4.3.13p1 Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-Os -march=athlon-xp -m3dnow -msse -mmmx -pipe -fomit-frame-pointer -falign-functions=4" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.1/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /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="-Os -march=athlon-xp -m3dnow -msse -mmmx -pipe -fomit-frame-pointer -falign-functions=4" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox userpriv usersandbox" GENTOO_MIRRORS="http://gentoo.mirrors.pair.com/ http://128.213.5.34/gentoo/ http://gentoo.noved.org/ http://trumpetti.atm.tut.fi/gentoo/" MAKEOPTS="-j2" PKGDIR="/var/tmp/portage-pkgs" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow X Xaw3d aalib aavm acl acpi acpi4linux alsa amd apache2 apm artswrappersuid autofs avi berkdb bindist bonobo cdr chroot crypt cscope cups curl dga directfb dvd encode esd etwin evms2 evo faad fam fastcgi fbcon flash foomaticdb gb gd gdbm ggi gif glut gnome gnutls gpm gtk gtk2 gtkhtml imagemagick imlib innodb ipv6 java javascript jpeg lcms libg++ libwww lufsusermount mad maildir mbox md5sum mdb memlimit mmap mmx mono motif mozilla mozsvg mpeg mpi msn mysql ncurses nls nogcj nomac nowin nptl offensive oggvorbis opengl openssh operanom2 oscar oss pam pcap pdflib pear-db perl pg-hier pg-vacuumdelay php pic png ppds psyco python qt quicktime readline ruby samba sasl sdk sdl slang snmp socks5 spell sqlite sse ssl stencil-buffer svga tcltk tcpd tetex tiff truetype usagi video_cards_nvidia vim-with-x wmf wxwin wxwindows x86 xfs xgetdefault xinerama xml2 xmms xosd xv yahoo zlib" And my linux-headers are 2.6.1 I have same problem with 2.6.4-rc1-love2 sources (which includes last mm patches) Just to make it complete: I get the same errors with alsa-tools-1.0.3 and ck-sources-2.6.3-r2. For those of you not following the upstream bug, they fixed it in CVS, but they don't have a patch to offer us against 1.0.3... if anyone wants to throw together a patch, I'll include it... otherwise we'll just wait for the next alsa version bump... The bug is now resolved. I dont know how to make a patch, but the solution was : The Old include section of sbiload.c #include <errno.h> #include <getopt.h> #include <sound/ainstr_fm.h> <----- old line #include <stdio.h> #include <stdlib.h> The new include section of sbiload.c #include <errno.h> #include <getopt.h> #include <alsa/sound/ainstr_fm.h> <------ new line #include <stdio.h> #include <stdlib.h> The other lines are unaffected For whatever reason I have also problems with asm/byteswap.h included from alsa/sound/ainstr_fm.h. After removing this line the stuff compiled successfully Created attachment 27328 [details]
Ebuild for patch to get this to compile with the 2.6 series kernel.
I must admit I'm a bit tired of this bug, so I've a patch that should hopefully
fix it for everyone, like it does for me. I'm also attaching an ebuild.
Created attachment 27329 [details, diff]
Patch to get this to compile with kernel 2.6
Here's the actual patch.
The ebuild and the patch both work for me. Thanks, Joe. I'll check this out this coming week. thanks. patch work good! this resolve the problem. thanks in portage... |