This is a general bug report for compilation of glibc, when the number of requested open file descriptors exceeds the specified limit. In this case gcc reports a short error message like "too many open files", however, building of glibc continues and produces many more 1000 lines of output before it finally fails. The error message reported gives no clue about why the compilation failed, in fact, it reportes an error message that is completely unrelated to the problem. 1. A minimum fix would be to make the install script grep the output log for the text string "too many files open" and then report an appropriate error message, e.g. like "To many open files; you should increase the number of open files limit in the file /etc/security/limits" 2. I am not able to tell, how the root cause of this problem should be fixed, but an expert should be able to point that out!!! Reproducible: Always Steps to Reproduce: 1. You need to add the following line into the file /etc/security/limits.conf: * soft nofile 200 or less 2. emerge glibc 3. emerge fails with some compile errors. In you grep through the corresponding log file for "too many open files", you find the true reason for the compilation failure. 4. set that value to 500 or higher, and the error disappears. Actual Results: compilation fails with the uncorrelated error messages Expected Results: Should give the correct error message AT THE BOTTOM OF THE LOG-FILE AND THE SCREEN OUTPUT: "Too many open files. Increase nofile in /etc/security/limits.conf
$ emerge --info Portage 2.1.2-r9 (default-linux/amd64/2006.1, gcc-4.1.1, glibc-2.5-r0, 2.6.18-gentoo-r1 x86_64) ================================================================= System uname: 2.6.18-gentoo-r1 x86_64 AMD Athlon(tm) 64 Processor 3200+ Gentoo Base System release 1.12.9 Timestamp of tree: Fri, 23 Feb 2007 22:20:01 +0000 distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.4 [enabled] dev-lang/python: 2.4.3-r4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.4-r6 sys-apps/sandbox: 1.2.17 sys-devel/autoconf: 2.13, 2.61 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10 sys-devel/binutils: 2.16.1-r3 sys-devel/gcc-config: 1.3.14 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r1 ACCEPT_KEYWORDS="amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=k8 -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/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c" CXXFLAGS="-march=k8 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache distlocks metadata-transfer sandbox sfperms strict" GENTOO_MIRRORS="ftp://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://cudlug.cudenver.edu/gentoo/ " MAKEOPTS="-j4" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage" USE="X Xaw3d amd64 berkdb bitmap-fonts bzip2 cairo cli cracklib crypt cups dri emacs fortran gdbm gpm graphviz gs gtk2 iconv ipv6 isdnlog jpeg jpeg2k leim lesstif libg++ midi ncurses nls nptl nptlonly pam pcre perl png ppds pppd python qt4 readline reflection ruby session slang spl ssl tcpd tiff truetype truetype-fonts type1-fonts unicode xorg 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 mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="nv fbdev vesa" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY
Yeah, feel free to bug upstream. http://sourceware.org/bugzilla/
(In reply to comment #2) > Yeah, feel free to bug upstream. > What does that mean ? How do I bug upstream? I think this bug report just needs to be forwarded to the person who maintains the emerge script in gentoo for the glibc and add a grep for the string I mentioned above.
(In reply to comment #3) > What does that mean ? How do I bug upstream? http://sourceware.org/bugzilla/ No, ebuild won't be grepping any logs. If you want more useful build system errors, not Gentoo.