I cannot emerge any version of Wine in my current configuration (gcc-3.4.4, gentoo-sources 2.6.13-r3, linux-headers 2.6.11-r2). Files that should be included by /usr/include/linux/sysdev.h are not getting properly included, as is evinced by the emerge errors: <snip - compile works for about 5 minutes, then...> i686-pc-linux-gnu-gcc -c -I. -I. -I../../include -I../../include -D__WINESRC__ -DWINE_NO_DEBUG_MSGS -DWINE_NO_TRACE_MSGS -D_KERNEL32_ -DETCDIR="\"/etc/wine\"" -D_REENTRANT -fPIC -Wall -pipe -mpreferred-stack-boundary=2 -fno-strict-aliasing -gstabs+ -Wpointer-arith -O2 -march=pentium4 -pipe -o cpu.o cpu.c In file included from /usr/include/machine/cpu.h:22, from cpu.c:32: /usr/include/linux/sysdev.h:30: error: field `drivers' has incomplete type /usr/include/linux/sysdev.h:34: error: parse error before "u32" /usr/include/linux/sysdev.h:36: error: field `kset' has incomplete type /usr/include/linux/sysdev.h:49: error: field `entry' has incomplete type /usr/include/linux/sysdev.h:53: error: parse error before "u32" /usr/include/linux/sysdev.h:68: error: parse error before "u32" /usr/include/linux/sysdev.h:71: error: parse error before '}' token /usr/include/linux/sysdev.h:78: error: field `attr' has incomplete type In file included from /usr/include/machine/cpu.h:23, from cpu.c:32: /usr/include/linux/node.h:26: error: field `sysdev' has incomplete type In file included from cpu.c:32: /usr/include/machine/cpu.h:31: error: field `sysdev' has incomplete type i686-pc-linux-gnu-gcc -c -I. -I. -I../../include -I../../include -D__WINESRC__ -DWINE_NO_DEBUG_MSGS -DWINE_NO_TRACE_MSGS -D_REENTRANT -fPIC -Wall -pipe -mpreferred-stack-boundary=2 -fno-strict-aliasing -gstabs+ -Wpointer-arith -O2 -march=pentium4 -pipe -o xvidmode.o xvidmode.c /usr/include/linux/sysdev.h:70: error: storage size of `kobj' isn't known make[2]: *** [cpu.o] Error 1 make[2]: Leaving directory `/var/tmp/portage/wine-20050725-r1/work/wine-20050725/dlls/kernel' make[1]: *** [kernel] Error 2 make[1]: *** Waiting for unfinished jobs.... If I try to edit the sysdev.h file to manually include another kernel header file that contains some of the definitions required, some of the errors go away, but obviously there's a problem here. Reproducible: Always Steps to Reproduce: 1. emerge wine 2. 3. Actual Results: Same results, whether using stable wine, ~x86 wine, or live cvs build. Expected Results: built correctly. ozark ~ # emerge info Portage 2.0.51.22-r3 (default-linux/x86/2005.1, gcc-3.4.4, glibc-2.3.5-r2, 2.6.13-gentoo-r3 i686) ================================================================= System uname: 2.6.13-gentoo-r3 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz Gentoo Base System version 1.6.13 dev-lang/python: 2.4.2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.20 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=pentium4 -mfpmath=sse -msse2 -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/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="-O2 -march=pentium4 -mfpmath=sse -msse2 -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.chem.wisc.edu/gentoo/ http://gentoo.mirrors.tds.net/gentoo http://mirror.espri.arizona.edu/gentoo/ http://mirror.datapipe.net/gentoo ftp://mirror.usu.edu/mirrors/gentoo/ http://gentoo.mirrors.easynews.com/linux/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.us.gentoo.org/gentoo-portage" USE="x86 X Xaw3d aac acpi aim alsa apm arts audiofile avi bash-completion berkdb bindist bitmap-fonts bmp bonobo browserplugin bzip2 cairo cdparanoia cdr crypt cups curl curlwrappers dbus dga dio directfb doc dri dvd dvdr dvdread eds emacs emboss encode escreen esd examples exif expat fbcon ffmpeg fftw firefox flac flash foomaticdb fortran freetds ftp gcj gd gdbm gif ginac glibc-compat20 glitz glx gmp gnome gnutls gphoto2 gpm gstreamer gtk gtk2 gtkhtml iconv imagemagick imlib ipv6 java javascript jpeg kde lapack libg++ libwww mad mbox mikmod mime mmx mmxext mng mono motif mozdevelop mozilla mp3 mpeg msn mysql nas ncurses neXt nis nls nptl nptlonly nsplugin nvidia offensive ofx ogg oggvorbis opengl oscar oss pam pdflib perl php png posix python qt quicktime readline real recode rtc ruby samba sasl sdl server session sharedext sharedmem shorten sockets spell spl sqlite sse sse2 ssl svg svga sybase sybase-ct symlink sysvipc tcltk tcpd tetex theora threads tiff truetype truetype-fonts type1-fonts udev usb v4l vcd vorbis win32codecs wmf wxwindows xanim xine xinerama xml xml2 xmlrpc xmms xpm xv xvid xvmc zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY
Please run: sed -i -e 's:u32:__u32:g' /usr/include/linux/sysdev.h and see if the issue is fixed. Thanks!
You've got something way wrong with your headers: << In file included from /usr/include/machine/cpu.h:22 >> This looks like a BSD header or something - that isn't coupled with linux-headers and seems to be interfering with it.