I'm trying to emerge glibc with these flags: [ebuild U ] sys-libs/glibc-2.4-r4 [2.4-r3] USE="-build -glibc-compat20% -glibc-omitfp -hardened (-multilib) nls nptl nptlonly -profile (-selinux)" 0 kB This fails: if test -r /Gentoo/Portage/build/portage/glibc-2.4-r4/image//usr/include/gnu/stubs-32.h && cmp -s /Gentoo/Portage/build/portage/glibc-2.4-r4/work/build-default-i686-pc-linux-gnu-nptl/stubs.h /Gentoo/Portage/build/portage/glibc-2.4-r4/image//usr/include/gnu/stubs-32.h; \ then echo 'stubs.h unchanged'; \ else /bin/install -c -m 644 /Gentoo/Portage/build/portage/glibc-2.4-r4/work/build-default-i686-pc-linux-gnu-nptl/stubs.h /Gentoo/Portage/build/portage/glibc-2.4-r4/image//usr/include/gnu/stubs-32.h; fi rm -f /Gentoo/Portage/build/portage/glibc-2.4-r4/work/build-default-i686-pc-linux-gnu-nptl/stubs.h /Gentoo/Portage/build/portage/glibc-2.4-r4/work/build-default-i686-pc-linux-gnu-nptl/elf/sln /Gentoo/Portage/build/portage/glibc-2.4-r4/work/build-default-i686-pc-linux-gnu-nptl/elf/symlink.list rm -f /Gentoo/Portage/build/portage/glibc-2.4-r4/work/build-default-i686-pc-linux-gnu-nptl/elf/symlink.list test ! -x /Gentoo/Portage/build/portage/glibc-2.4-r4/work/build-default-i686-pc-linux-gnu-nptl/elf/ldconfig || LC_ALL=C LANGUAGE=C \ /Gentoo/Portage/build/portage/glibc-2.4-r4/work/build-default-i686-pc-linux-gnu-nptl/elf/ldconfig -r /Gentoo/Portage/build/portage/glibc-2.4-r4/image/ \ /lib /usr/lib /Gentoo/Portage/build/portage/glibc-2.4-r4/work/build-default-i686-pc-linux-gnu-nptl/elf/ldconfig: Can't open configuration file /etc/ld.so.conf: No such file or directory make[1]: Leaving directory `/Gentoo/Portage/build/portage/glibc-2.4-r4/work/glibc-2.4' /Gentoo/Portage/tree.lokal/sys-libs/glibc/glibc-2.4-r4.ebuild: line 496: 1242 Floating point exception"${D}"/$(get_libdir)/ld-*.so --library-path "${D}"/$(get_libdir) ${x} >/dev/null !!! ERROR: sys-libs/glibc-2.4-r4 failed. Call stack: ebuild.sh, line 1546: Called dyn_install ebuild.sh, line 1020: Called src_install glibc-2.4-r4.ebuild, line 1248: Called toolchain-glibc_src_install glibc-2.4-r4.ebuild, line 505: Called die !!! simple run test (/bin/date) failed !!! If you need support, post the topmost build error, and the call stack if relevant. The error "Can't open configuration file /etc/ld.so.conf: No such file or directory" can be found in other bugs as well. Please see bug #132255 , bug #124682 or bug #50678. alexander@blatt ~ $ emerge --info Portage 2.1.2_pre2 (default-linux/x86/2006.1, gcc-4.1.1, glibc-2.4-r3, 2.6.18-suspend2.045 i686) ================================================================= System uname: 2.6.18-suspend2.045 i686 Intel(R) Celeron(R) M processor 1.50GHz Gentoo Base System version 1.12.5 Last Sync: Sat, 30 Sep 2006 21:50:01 +0000 ccache version 2.4 [enabled] app-admin/eselect-compiler: [Not Present] dev-java/java-config: 2.0.30 dev-lang/python: 2.4.3-r4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.4-r6 dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.18.1 sys-devel/autoconf: 2.13, 2.60 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2 sys-devel/binutils: 2.17 sys-devel/gcc-config: 1.3.13-r3 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -mtune=pentium-m -pipe -fomit-frame-pointer" CHOST="i686-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/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-O2 -mtune=pentium-m -pipe -fomit-frame-pointer" DISTDIR="/Gentoo/Portage/distfiles" EMERGE_DEFAULT_OPTS="--alphabetical" FEATURES="autoconfig buildpkg ccache collision-protect distlocks metadata-transfer sandbox sfperms strict" GENTOO_MIRRORS=" http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://ftp.tu-clausthal.de/pub/linux/gentoo/ http://distro.ibiblio.org/pub/linux/distributions/gentoo/ ftp://distro.ibiblio.org/pub/linux/distributions/gentoo http://distfiles.gentoo.org/ " LANG="de_DE.UTF-8" LINGUAS="de" PKGDIR="/Gentoo/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="/Gentoo/Portage/build" PORTDIR="/Gentoo/Portage/tree" PORTDIR_OVERLAY="/Gentoo/Portage/local-tree/misc" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="x86 alsa berkdb bitmap-fonts cli crypt dlloader dri elibc_glibc esd fortran gdbm gnome gstreamer hal input_devices_evdev input_devices_keyboard input_devices_mouse isdnlog kdeenablefinal kdehiddenvisibility kernel_linux libedit libg++ libnotify linguas_de ncurses nls nptl nptlonly pcre perl ppds pppd python readline reflection session spl ssl tcpd truetype-fonts type1-fonts udev unicode userland_GNU video_cards_fbdev video_cards_vesa video_cards_vga video_cards_via xorg zlib" Unset: CTARGET, INSTALL_MASK, LC_ALL, LDFLAGS, MAKEOPTS, PORTAGE_RSYNC_EXTRA_OPTS
Raising to Severity: major, as glibc is somewhat important ;)
the ld.so.conf is a warning, not an error your problem is this: /Gentoo/Portage/tree.lokal/sys-libs/glibc/glibc-2.4-r4.ebuild: line 496: 1242 Floating point exception"${D}"/$(get_libdir)/ld-*.so --library-path "${D}"/$(get_libdir) ${x} >/dev/null does glibc-2.4-r3 emerge ?
(In reply to comment #2) > the ld.so.conf is a warning, not an error Ah, okay. Thanks. > your problem is this: > /Gentoo/Portage/tree.lokal/sys-libs/glibc/glibc-2.4-r4.ebuild: line 496: 1242 > Floating point exception"${D}"/$(get_libdir)/ld-*.so --library-path > "${D}"/$(get_libdir) ${x} >/dev/null > > does glibc-2.4-r3 emerge ? > alexander@blatt ~ $ ls -lad /var/db/pkg/*/*glibc* drwxr-xr-x 2 root root 4096 9. Sep 03:59 /var/db/pkg/sys-libs/glibc-2.4-r3 IOW: I had glibc-2.4-r3 installed. I'll check if re-emerge'ing it works.
(In reply to comment #3) > (In reply to comment #2) > > does glibc-2.4-r3 emerge ? > IOW: I had glibc-2.4-r3 installed. I'll check if re-emerge'ing it works. Yes, -r3 can be emerged. Resetting severity to the proper setting.
then try setting the 2.4-r4 patchset to 1.17 and if that works, try taking out the different patches none of the new patches in 1.18 should be causing this
Reverting to patchset 1.17 apparently allows the checks to succeed, but ends with: /var/tmp/portage/glibc-2.4-r4/work/build-default-i686-pc-linux-gnu-nptl/elf/ldconfig: Can't open configuration file /etc/ld.so.conf: No such file or directory make[1]: Leaving directory `/var/tmp/portage/glibc-2.4-r4/work/glibc-2.4' install: cannot stat `/var/tmp/portage/glibc-2.4-r4/work/extra/etc/*.conf': No such file or directory Might be that the unsuccessfull read of /etc/ld.so.conf only gives a warning, but the install fails.
the ld.so.conf is harmless ... since i moved config files from $FILESDIR to the patchset, you'll get an install failure as you've said ... but your test shows that the problem lies in the patches the next part is to build up 1.17 + the new patches one at a time to figure out what the problem is ... i'd do it but 2.4-r4 works fine on my amd64/x86 machines
So the problem becomes more interesting: [~]>/lib/ld-linux.so.2 /bin/date Fri Oct 6 10:40:18 CEST 2006 (a system running x86 stable, where /bin/date is dynamically linked) dnnote glibc-2.4 # /lib/ld-linux.so.2 /bin/date Segmentation fault dnnote glibc-2.4 # date Fri Oct 6 11:39:31 AST 2006 My laptop. The current /lib/ld-linux.so.2 apparently can not run (statically linked) executables directly (for whatever reason), and ... dnnote glibc-2.4 # ../build-default-i686-pc-linux-gnu-nptl/elf/ld.so /bin/date Segmentation fault ... so can't the newly built one. I don't really understand why you test the dynamic linker against statically linked executables at all. dnnote glibc-2.4 # elfsh Welcome to The ELF shell 0.51b3 .::. .::. This software is under the General Public License .::. Please visit http://www.gnu.org to know about Free Software [ELFsh-0.51b3]$ load /bin/true [*] New object /bin/true loaded on Fri Oct 6 11:57:50 2006 [ELFsh-0.51b3]$ i [libelfsh:get_section_by_name] Section not found [ELFsh-0.51b3]$ load /usr/bin/bc [*] New object /usr/bin/bc loaded on Fri Oct 6 11:57:57 2006 [ELFsh-0.51b3]$ i [SHT_INTERP] : /lib/ld-linux.so.2 The statically linked executable (/bin/true) does not have a .interp section that tells the kernel to load the dynamic linker after all, while the dynamically linked one has - and can be run by both linkers. After all, there is nothing wrong with the new glibc, just some obscure bug when doing something that is not supposed to happen ;)
In my oppinion the problem is: In 2.4-r3, the ebuild tests: striptest=$(file -L ${x} 2>/dev/null) [[ -z ${striptest} ]] && continue [[ ${striptest/statically linked} != "${striptest}" ]] && continue In 2.4-r4, the ebuild tests: striptest=$(LC_ALL="C" file -L ${x} 2>/dev/null) [[ -z ${striptest} ]] && continue [[ ${striptest} != *"statically linked"* ]] && continue which to me has the opposite meaning.
thanks, fixed in cvs