When emerging glibc-2.3.5-r3, if any element of LD_LIBRARY_PATH contains a dot anywhere within it, glibc thinks the current directory is in it and dumps out. The workaround is pretty simple; just remove these elements from the path; however I woudn't want to be around if I needed something at the other end of that path. Reproducible: Always Steps to Reproduce: 1. LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/root/.local/lib" 2. emerge glibc 3. watch Actual Results: glibc refused to compile, thinking that '.' (the current directory) was in the path. Expected Results: I'm thinking a pattern match along the lines of /(:.:|^.:|:.$)/. Portage 2.0.53_rc7 (default-linux/amd64/2005.1, gcc-3.4.4, glibc-2.3.5-r0, 2.6.1 3-gentoo-r5 x86_64) ================================================================= System uname: 2.6.13-gentoo-r5 x86_64 AMD Athlon(tm) 64 Processor 3000+ Gentoo Base System version 1.6.12 distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabl ed] ccache version 2.4 [enabled] dev-lang/python: 2.3.5 sys-apps/sandbox: 1.2.11 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.5 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.20 virtual/os-headers: 2.6.11-r3 ACCEPT_KEYWORDS="amd64 ~amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-Os -fomit-frame-pointer -pipe -march=k8 -mmmx -m3dnow -msse -msse2" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X1 1/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-Os -fomit-frame-pointer -pipe -march=k8 -mmmx -m3dnow -msse -msse2" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig candy ccache distcc distlocks sandbox sfperms strict userpr iv usersandbox" GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo http://adelie.polymtl.ca/ http ://gentoo.mirrors.tds.net/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.ca.gentoo.org/gentoo-portage" USE="amd64 X aac alsa aotuv audiofile avi berkdb bindist bitmap-fonts bl bzip2 c ap cdparanoia cluster crypt cups dga edl eds emboss encode expat fam flac foomat icdb fortran gif glibc-omitfp gnutls gpm gstreamer gtk gtk2 guile hal imlib ipv6 jack jack-tmpfs java jpeg kde lcms ldap ldapsam lirc live lzo lzw lzw-tiff mad maildir matroska mikmod mng mozsvg mp3 mpeg mysql mysqli ncurses nptl nptlonly n splugin nvidia offensive ogg opengl pam pcre pdflib perl png python quicktime re adline real reiserfs rle rtc sdl sndfile spell ssl streamzap symlink tcpd theora tiff truetype truetype-fonts type1-fonts udev usb userlocales vorbis xanim xml2 xmms xpm xprint xv xvid xvmc zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
having an empty path ("") in LD_LIBRARY_PATH has the same exact meaning as "."
It wasn't empty, since when I removed the instance of '.local' from the path it started working.
post the output of glibc going boom please
i'm unable to reproduce this if you do: LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/root/.local/lib" and LD_LIBRARY_PATH is empty, then you end up with: :/root/.local/lib and that is wrong i reviewed the configure.in script and the logic in it is correct ... also, this worked just fine for me: LD_LIBRARY_PATH=/root/.local/lib emerge ~glibc-2.3.5 but this (predictably) failed: LD_LIBRARY_PATH=:/root/.local/lib emerge ~glibc-2.3.5