Compiles fine until: Processing input file TargetLocation.xml Have 105 elements in the Mono.Debugger Have 24 elements in the Mono.Debugger.Languages Processing input file ITargetStructObject.xml Processing input file ITargetStructType.xml Processing input file ITargetType.xml Processing input file IVariable.xml Processing input file LocationEventHandler.xml Processing input file RelativeTargetLocation.xml Processing input file TargetLocation.xml Have 105 elements in the Mono.Debugger Have 24 elements in the Mono.Debugger.Languages make[2]: Leaving directory `/var/tmp/portage/mono-debugger-0.6/work/mono-debugger-0.6/doc' make[2]: Entering directory `/var/tmp/portage/mono-debugger-0.6/work/mono-debugger-0.6' make[2]: Nothing to be done for `all-am'. make[2]: Leaving directory `/var/tmp/portage/mono-debugger-0.6/work/mono-debugger-0.6' make[1]: Leaving directory `/var/tmp/portage/mono-debugger-0.6/work/mono-debugger-0.6' After that it just hangs in there, doing nothing, forever. Reproducible: Always Steps to Reproduce: 1. 2. 3. Portage 2.0.50-r3 (default-x86-1.4, gcc-3.3.3, glibc-2.3.3_pre20040207-r0, 2.6.4-gentoo) ================================================================= System uname: 2.6.4-gentoo i686 AMD Athlon(TM) XP 2000+ Gentoo Base System version 1.4.3.13p1 distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] ccache version 2.3 [enabled] Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -O3 -pipe" 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 /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=athlon-xp -O3 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache cvs distcc sandbox" GENTOO_MIRRORS="http://gentoo.inode.at http://gentoo.oregonstate.edu" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://gentoo.inode.at/gentoo-portage" USE="X aalib alsa apm arts avi berkdb bonobo cdr composite crypt cups dvd dvdr encode esd foomaticdb gdbm gif gnome gphoto2 gpm gtk gtk2 guile imlib java jpeg kde ldap libg++ libwww mad mikmod motif mozilla moznocompose moznoirc moznomail mpeg ncurses nls nptl oggvorbis opengl oss pam pdflib perl png python qt quicktime readline samba sdl slang spell ssl svga tcltk tcpd tiff truetype x86 xfs xml2 xmms xv zlib"
Same problem, no errors. Simply stop and does nothing. (the terminal is busy of course, but can continue using it doing a Crtl+c two times). No CPU use... (0%) and a "ps aux" show one strange process: root 21194 0.0 0.1 10052 668 pts/0 T 16:40 0:00 ./conftest man ps says me that: T traced or stopped Could be the problem... I don't know :? my emerge info: ~ $ emerge info Portage 2.0.50-r3 (default-x86-1.4, gcc-3.3.2, glibc-2.3.2-r9, 2.6.5) ================================================================= System uname: 2.6.5 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz Gentoo Base System version 1.4.3.13 distcc 2.12.1 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] Autoconf: sys-devel/autoconf-2.58-r1 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -O2 -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.1/share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium3 -O2 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="ftp://cs.ubishops.ca/pub/gentoo http://128.213.5.34/gentoo/ ftp://sunsite.ualberta.ca/pub/unix/Linux/gentoo/ ftp://ibiblio.org/pub/Linux/distributions/gentoo/ ftp://mirror.iawnet.sandia.gov/pub/gentoo/ ftp://ftp.ussg.iu.edu/pub/linux/gentoo ftp://ftp.ucsb.edu/pub/mirrors/linux/gentoo/ http://gentoo.seren.com/gentoo http://gentoo.chem.wisc.edu/gentoo/ http://mirror.tucdemonic.org/gentoo/ http://mirror.clarkson.edu/pub/distributions/gentoo/ ftp://gentoo.agsn.ca/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/mnt/data/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X alsa apache2 apm avi bonobo cdr crypt cups dga dvd encode esd evo fbcon foomaticdb gb gdbm gif gimpprint gnome gpm gtk gtk2 gtkhtml guile imap imlib innodb java jpeg libg++ libwww mad mikmod motif mozilla moznoirc moznomail mpeg mule mysql ncurses nls nptl odbc oggvorbis opengl oss pam pdflib perl png ppds python quicktime radeon readline samba sdl slang slp spell sse ssl svga tcltk tcpd tiff truetype unicode usb video_cards_radeon x86 xml xml2 xmms xv zlib"
mono-debugger-0.6 needs monodoc(see bug 46586), have you tried emerging mono-debugger with monodoc installed?
monodoc is installed, so that's not the problem
Same problem here, emerge info: bjlinux barryj # emerge info Portage 2.0.50-r6 (default-x86-2004.0, gcc-3.3.3, glibc-2.3.3_pre20040420-r0, 2.6.5-gentoo-r1) ================================================================= System uname: 2.6.5-gentoo-r1 i686 AMD Athlon(tm) Gentoo Base System version 1.4.10 Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer -ffast-math -fPIC" 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/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer -ffast-math -fPIC" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://mirrors.tds.net/gentoo http://mirror.tucdemonic.org/gentoo/ http://www.gtlib.cc.gatech.edu/pub/gentoo http://gentoo.ccccom.com http://212.219.247.11/sites/www.ibiblio.org/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 PIC X alsa apache2 apm avi berkdb cdr crypt cups directfb dvd dvdr encode esd fbcon flac foomaticdb gd gdbm gif gnome gnomedb gpm gtk gtk2 gtkhtml imlib java joystick jpeg libg++ libgda libwww mad mikmod mmx motif mozilla mpeg mysql ncurses nls nptl oggvorbis opengl oss pam pdflib perl pic png python qt quicktime readline samba sdl slang spell sse ssl svga tcpd truetype x86 xml2 xmms xv zlib"
A workaround for now is to wait for it to stall then kill the conftest process (with kill -9) - the make then continues and merges seemingly OK (not tested yet). Also note the following: # ll /proc/7080 total 0 dr-xr-xr-x 3 root root 0 Apr 30 17:53 ./ dr-xr-xr-x 208 root root 0 Apr 29 13:38 ../ -r-------- 1 root root 0 Apr 30 18:01 auxv -r--r--r-- 1 root root 0 Apr 30 17:53 cmdline lrwxrwxrwx 1 root root 0 Apr 30 18:01 cwd -> /var/tmp/portage/mono-debugger-0.6/work/mono-debugger-0.6/ -r-------- 1 root root 0 Apr 30 18:01 environ lrwxrwxrwx 1 root root 0 Apr 30 18:01 exe -> /var/tmp/portage/mono-debugger-0.6/work/mono-debugger-0.6/conftest (deleted) dr-x------ 2 root root 0 Apr 30 17:58 fd/ -r--r--r-- 1 root root 0 Apr 30 18:01 maps -rw------- 1 root root 0 Apr 30 18:01 mem -r--r--r-- 1 root root 0 Apr 30 18:01 mounts lrwxrwxrwx 1 root root 0 Apr 30 18:01 root -> // -r--r--r-- 1 root root 0 Apr 30 17:58 stat -r--r--r-- 1 root root 0 Apr 30 18:01 statm -r--r--r-- 1 root root 0 Apr 30 17:53 status dr-xr-xr-x 3 root root 0 Apr 30 18:01 task/ -r--r--r-- 1 root root 0 Apr 30 18:01 wchan The actual conftest executable has been deleted, which is possibly the cause of the problem.
More info: this is NPTL only.
I believe I understand the problem. The configure script contains an AC_RUN_IFELSE to check for NPTL support. I attach this conftest (C source) as a testcase. If run with stdout as a pipe: $ gcc -lpthread -o conftest conftest.c conftest.c: In function `main': conftest.c:44: warning: passing arg 3 of `pthread_create' from incompatible pointer type $ ./conftest | cat OK although conftest returns (test with: ( ./conftest; echo "Done" ) | cat) the child process is still in existence so the shell does not resume. In the case of the mono-debugger ebuild, stdout is a pipe to tee if portage logging is enabled. This means that econf runs, emake runs, but then ebuild.sh does not exit and return control to ebuild for the src_install stage. Note that if conftest is run with stdout as a terminal or a > redirection then the child process terminates correctly. I do not begin to understand why this is. This provides a number of possible solutions: 1. Disable portage logging for this ebuild 2. Redirect output of configure to /dev/null These are not particularly attractive. 3. Patch the NPTL AC_RUN_IFELSE conftest to kill the child process, with signal 9 This is easy to do and a patch can be applied to configure as well as configure.in, so running autoconf will not be necessary. I will attach the requisite patch.
Created attachment 30418 [details] Test case Compile with -lpthread.
Created attachment 30419 [details, diff] 0.6-configure-nptl-logging-freeze.patch
Upstream: http://bugzilla.ximian.com/show_bug.cgi?id=57931
Marking WONTFIX. The debugger is package.masked until a new release which will hopefully not be as buggy/broken.