During compilation of dev-util/mono-debugger-0.60, mono-debugger fails to compile. Reproducible: Always Steps to Reproduce: 1. emerge mono-debugger 2. 3. Actual Results: /bin/sh ../../libtool --tag=CC --mode=compile x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../.. -D_REENTRANT -pthread -I/usr/lib64/pkgconfig/../../include/mono-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -D_GNU_SOURCE -MT breakpoints.lo -MD -MP -MF .deps/breakpoints.Tpo -c -o breakpoints.lo breakpoints.c In file included from x86-arch.h:84, from x86-linux-ptrace.h:4, from x86-ptrace.c:38: x86_64-arch.h:10:22: error: asm/user.h: No such file or directory In file included from x86-ptrace.c:38: x86-linux-ptrace.h:10: warning: 'struct user_regs_struct' declared inside parameter list x86-linux-ptrace.h:10: warning: its scope is only this definition or declaration, which is probably not what you want x86-linux-ptrace.h:13: warning: 'struct user_regs_struct' declared inside parameter list x86-linux-ptrace.h:16: warning: 'struct user_i387_struct' declared inside parameter list x86-linux-ptrace.h:19: warning: 'struct user_i387_struct' declared inside parameter list In file included from x86-ptrace.c:531: x86-linux-ptrace.c:26: warning: 'struct user_regs_struct' declared inside parameter list x86-linux-ptrace.c:26: error: conflicting types for '_server_ptrace_get_registers' x86-linux-ptrace.h:10: error: previous declaration of '_server_ptrace_get_registers' was here x86-linux-ptrace.c:35: warning: 'struct user_regs_struct' declared inside parameter list x86-linux-ptrace.c:35: error: conflicting types for '_server_ptrace_set_registers' x86-linux-ptrace.h:13: error: previous declaration of '_server_ptrace_set_registers' was here x86-linux-ptrace.c:44: warning: 'struct user_i387_struct' declared inside parameter list x86-linux-ptrace.c:44: error: conflicting types for '_server_ptrace_get_fp_registers' x86-linux-ptrace.h:16: error: previous declaration of '_server_ptrace_get_fp_registers' was here x86-linux-ptrace.c:53: warning: 'struct user_i387_struct' declared inside parameter list x86-linux-ptrace.c:53: error: conflicting types for '_server_ptrace_set_fp_registers' x86-linux-ptrace.h:19: error: previous declaration of '_server_ptrace_set_fp_registers' was here x86-linux-ptrace.c: In function '_server_ptrace_set_dr': x86-linux-ptrace.c:100: error: invalid use of undefined type 'struct user' x86-linux-ptrace.c: In function '_server_ptrace_get_dr': x86-linux-ptrace.c:116: error: invalid use of undefined type 'struct user' In file included from x86-ptrace.c:541: x86_64-arch.c: At top level: x86_64-arch.c:29: error: field 'current_regs' has incomplete type x86_64-arch.c:30: error: field 'current_fpregs' has incomplete type x86_64-arch.c:40: error: field 'saved_regs' has incomplete type x86_64-arch.c:41: error: field 'saved_fpregs' has incomplete type make[3]: *** [x86-ptrace.lo] Error 1 make[3]: *** Waiting for unfinished jobs.... x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../.. -D_REENTRANT -pthread -I/usr/lib64/pkgconfig/../../include/mono-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -D_GNU_SOURCE -MT breakpoints.lo -MD -MP -MF .deps/breakpoints.Tpo -c breakpoints.c -fPIC -DPIC -o .libs/breakpoints.o x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I../.. -D_REENTRANT -pthread -I/usr/lib64/pkgconfig/../../include/mono-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -D_GNU_SOURCE -MT breakpoints.lo -MD -MP -MF .deps/breakpoints.Tpo -c breakpoints.c -o breakpoints.o >/dev/null 2>&1 mv -f .deps/breakpoints.Tpo .deps/breakpoints.Plo make[3]: Leaving directory `/var/tmp/portage/dev-util/mono-debugger-0.60/work/mono-debugger-0.60/backend/server' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/dev-util/mono-debugger-0.60/work/mono-debugger-0.60/backend' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/dev-util/mono-debugger-0.60/work/mono-debugger-0.60' make: *** [all] Error 2 Portage 2.2_rc8 (default/linux/amd64/2008.0, gcc-4.3.1, glibc-2.8_p20080602-r0, 2.6.26-gentoo-r1 x86_64) ================================================================= System uname: Linux-2.6.26-gentoo-r1-x86_64-AMD_Athlon-tm-_64_Processor_3000+-with-glibc2.2.5 Timestamp of tree: Sat, 30 Aug 2008 16:19:01 +0000 ccache version 2.4 [enabled] app-shells/bash: 3.2_p39 dev-java/java-config: 1.3.7, 2.1.6-r1 dev-lang/python: 2.5.2-r7 dev-util/ccache: 2.4-r7 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.2.5 sys-apps/sandbox: 1.2.18.1-r3 sys-devel/autoconf: 2.13, 2.62-r1 sys-devel/automake: 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 2.2.4 virtual/os-headers: 2.6.26 ACCEPT_KEYWORDS="amd64 ~amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache distlocks parallel-fetch preserve-libs sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo " LDFLAGS="-Wl,-O1" LINGUAS="de" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="3dnow X a52 aac acl acli acpi ada aim alsa amd64 apm arts audiofile bash-completion berkdb bluetooth bzip2 cairo calendar cdb cddb cdparanoia cdr clamav cli cracklib crypt css ctype cups dbus dri dv dvb dvd dvdr dvdread emacs encode exif expat fam ffmpeg flac fontconfig fortran ftp gdbm gif gimp glut gnuplot gphoto2 gpm gps graphviz hal iconv icq imagemagick innodb ipv6 irc isdnlog jabber java java6 joystick jpeg jpeg2k kde lame latex lcms libnotify libwww lm_sensors logitech-mouse loop-aes maildir man mhash midi mime mmap mmx mng mp3 mpeg mplay msn mudflap multilib musepack musicbrainz ncurses nls nntp nptl nptlonly nsplugin ntpl offensive ogg openexr opengl openmp pam pcre pda pdf perl png pppd python qt3 qt4 readline reflection rss scanner sdl session sox spl sqlite sse sse2 ssl startup-notification subversion suid svg sysfs syslog taglib tcpd themes theora threads tiff timidity truetype unicode usb v4l v4l2 vcd vnc vorbis wavpack wmf x264 xattr xine xml xorg xosd xpn xscreensaver xulrunner xv xvid yahoo zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" USERLAND="GNU" VIDEO_CARDS="fglrx" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Aha, asm/user.h should be patched to sys/user.h, rather than having x86-specific definitions inserted (see mono-debugger-kernel-2.6.19-fix-i386-asm.patch). Assigning to ebuild maintainer.
2.0 Does not have this problem.