Summary: | sys-libs/glibc-2.9_p20081201-r2 fails to compile | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Mike Nerone <mike> |
Component: | [OLD] Core system | Assignee: | Gentoo Toolchain Maintainers <toolchain> |
Status: | RESOLVED NEEDINFO | ||
Severity: | normal | CC: | nabeken |
Priority: | High | ||
Version: | 10.0 | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | Full build.log |
Description
Mike Nerone
2009-12-22 21:19:39 UTC
Oh, and let me anticipate some questions based on other somewhat similar bug reports I've seen: 1. 32-bit support is in the kernel: # zcat /proc/config.gz | grep IA32 CONFIG_IA32_EMULATION=y CONFIG_IA32_AOUT=y 2. The system has always been multi-lib, and never used a no-multilib profile. It was originally built with default/linux/amd64/2008.0 and only switched to default/linux/amd64/10.0 when 2008.0 became deprecated. 3. I've never crazy and manually removed toolchain binaries or libraries as others have. 4. All of the expected lib dirs are present: # ls -ld {/usr,}/lib{32,64,} lrwxrwxrwx 1 root root 5 2009-10-02 20:39 /lib -> lib64 drwxr-xr-x 2 root root 4096 2009-12-16 10:56 /lib32 drwxr-xr-x 6 root root 4096 2009-12-16 12:31 /lib64 lrwxrwxrwx 1 root root 5 2009-10-02 20:40 /usr/lib -> lib64 drwxr-xr-x 4 root root 4096 2009-12-16 11:08 /usr/lib32 drwxr-xr-x 30 root root 20480 2009-12-22 04:58 /usr/lib64 5. ...and they *seem* properly populated to me, but I'm no expert: # ls {/usr,}/lib{32,64} /lib32: ld-2.9.so libcidn.so.1 libmemusage.so libnss_files-2.9.so libpcprofile.so libthread_db-1.0.so ld-linux.so.2 libcrypt-2.9.so libm.so.6 libnss_files.so.2 libpthread-2.9.so libthread_db.so.1 libanl-2.9.so libcrypt.so.1 libnsl-2.9.so libnss_hesiod-2.9.so libpthread.so.0 libutil-2.9.so libanl.so.1 libc.so.6 libnsl.so.1 libnss_hesiod.so.2 libresolv-2.9.so libutil.so.1 libBrokenLocale-2.9.so libdl-2.9.so libnss_compat-2.9.so libnss_nis-2.9.so libresolv.so.2 libBrokenLocale.so.1 libdl.so.2 libnss_compat.so.2 libnss_nisplus-2.9.so librt-2.9.so libc-2.9.so libgcc_s.so.1 libnss_dns-2.9.so libnss_nisplus.so.2 librt.so.1 libcidn-2.9.so libm-2.9.so libnss_dns.so.2 libnss_nis.so.2 libSegFault.so /lib64: cpp libbz2.so.1.0 libext2fs.so.2 libnss_dns-2.9.so libpam.so libss.so.2.0 ld-2.9.so libbz2.so.1.0.5 libext2fs.so.2.4 libnss_dns.so.2 libpam.so.0 libthread_db-1.0.so ld-linux.so.2 libc-2.9.so libgcc_s.so.1 libnss_files-2.9.so libpam.so.0.82.1 libthread_db.so.1 ld-linux-x86-64.so.2 libcidn-2.9.so libhistory.so.6 libnss_files.so.2 libpcprofile.so libudev.so.0 libacl.so libcidn.so.1 libhistory.so.6.0 libnss_hesiod-2.9.so libpcre.so.0 libudev.so.0.5.0 libacl.so.1 libcom_err.so.2 libm-2.9.so libnss_hesiod.so.2 libpcre.so.0.0.1 libusb-0.1.so.4 libacl.so.1.1.0 libcom_err.so.2.1 libmemusage.so libnss_ldap-2.9.so libproc-3.2.8.so libusb-0.1.so.4.4.4 libanl-2.9.so libcrack.so.2 libm.so.6 libnss_ldap.so.2 libproc.so libutil-2.9.so libanl.so.1 libcrack.so.2.8.0 libncurses.so libnss_nis-2.9.so libpthread-2.9.so libutil.so.1 libattr.so libcrypt-2.9.so libncurses.so.5 libnss_nisplus-2.9.so libpthread.so.0 libuuid.so.1 libattr.so.1 libcrypt.so.1 libncurses.so.5.6 libnss_nisplus.so.2 libreadline.so.6 libuuid.so.1.3.0 libattr.so.1.1.0 libc.so.6 libncursesw.so libnss_nis.so.2 libreadline.so.6.0 libz.so libblkid.so.1 libcurses.so libncursesw.so.5 libpamc.so libresolv-2.9.so libz.so.1 libblkid.so.1.1.0 libcursesw.so libncursesw.so.5.6 libpamc.so.0 libresolv.so.2 libz.so.1.2.3 libBrokenLocale-2.9.so libdl-2.9.so libnsl-2.9.so libpamc.so.0.82.1 librt-2.9.so modules libBrokenLocale.so.1 libdl.so.2 libnsl.so.1 libpam_misc.so librt.so.1 rcscripts libbz2.so libe2p.so.2 libnss_compat-2.9.so libpam_misc.so.0 libSegFault.so security libbz2.so.1 libe2p.so.2.3 libnss_compat.so.2 libpam_misc.so.0.82.0 libss.so.2 udev /usr/lib32: crt1.o libBrokenLocale.a libc_nonshared.a libdl.so libnsl_g.a libpthread.a librpcsvc_g.a libutil_g.a crti.o libBrokenLocale_g.a libcrypt.a libg.a libnsl.so libpthread_g.a librt.a libutil.so crtn.o libBrokenLocale.so libcrypt_g.a libieee.a libnss_compat.so libpthread_nonshared.a librt_g.a locale gconv libbsd.a libcrypt.so libm.a libnss_dns.so libpthread.so librt.so Mcrt1.o gcrt1.o libbsd-compat.a libc.so libmcheck.a libnss_files.so libresolv.a libsandbox.la misc libanl.a libc.a libc_stubs.a libm_g.a libnss_hesiod.so libresolv_g.a libsandbox.so Scrt1.o libanl_g.a libc_g.a libdl.a libm.so libnss_nisplus.so libresolv.so libthread_db.so libanl.so libcidn.so libdl_g.a libnsl.a libnss_nis.so librpcsvc.a libutil.a /usr/lib64: apr-util-1 libexpat.a libgudev-1.0.la libnss_compat.so libsvn_fs_fs-1.so.0 binutils libexpat.la libgudev-1.0.so libnss_dns.so libsvn_fs_fs-1.so.0.0.0 ConsoleKit libexpat.so libgudev-1.0.so.0 libnss_files.so libsvn_fs_util-1.a coreutils libexpat.so.1 libgudev-1.0.so.0.0.1 libnss_hesiod.so libsvn_fs_util-1.la cracklib_dict.hwm libexpat.so.1.5.2 libheap.so libnss_ldap.so.2 libsvn_fs_util-1.so cracklib_dict.pwd libext2fs.a libheap.so.0 libnss_nisplus.so libsvn_fs_util-1.so.0 cracklib_dict.pwi libext2fs.so libheap.so.0.0 libnss_nis.so libsvn_fs_util-1.so.0.0.0 <BIG SNIP> libecpg.so libgpg-error.so.0.5.0 libneon.so libsvn_fs-1.so terminfo libevtlog.a libgthread-2.0.a libneon.so.27 libsvn_fs-1.so.0 vlock libevtlog.la libgthread-2.0.la libneon.so.27.2.0 libsvn_fs-1.so.0.0.0 xml2Conf.sh libevtlog.so libgthread-2.0.so libnsl.a libsvn_fs_fs-1.a libevtlog.so.0 libgthread-2.0.so.0 libnsl_g.a libsvn_fs_fs-1.la libevtlog.so.0.0.0 libgthread-2.0.so.0.2000.5 libnsl.so libsvn_fs_fs-1.so post the entire build log as an attachment make sure a simple 32bit app works: echo 'main(){return 0;}' > test.c gcc -m32 test.c ./a.out Created attachment 214574 [details]
Full build.log
Simple 32-bit program works (no error output):
==================================
~/tmp # echo 'main(){return 0;}' > test.c; gcc -m32 test.c; ./a.out
~/tmp #
==================================
BTW, if I try to compile glibc-2.10.1-r1, it gets past the configure without erroring, but determines the size of a long double to be 0, which is obviously incorrect unless some truly amazing compression is at work. :P Any thoughts on this, yet? sadly, you've seem to have covered all the basics and based on the output, there shouldnt be anything wrong you can try things like FEATURES="-sandbox -userpriv -usersandbox", or go into the build dir and run configure yourself: CFLAGS='-O2 -m32' ../glibc-*/configure <add all the flags from the log> and see if that fails too Those attempts result in the same failure. Note: now that 2.10-r1 is stable, the failure I see is a zero result for the size of a long double. BTW, if I use CFLAGS='-O2 -m64', it works. Does that provide a hint in any way? So I ended up just kicking a new slice, and it does not exhibit the problem. I can only speculate as to what the cause of the issue was. For one thing, at the time I created the original slice, the Gentoo image they had was built from 2008.0 media, while the new slice started off the the newly-available 10.0 installation. That alone could account for the problem. It's also *possible* (again, pure conjecture here) that slicehost themselves had made a mistake when building the original 2008.0 image, perhaps inadvertently switching profiles between no-multilib and multilib. This possibility hadn't occurred to me previously, but I actually kinda doubt that this was the case, because they have been technical wizards in every other way. Feel free to close this bug with whatever status you see fit. it's a crappy situation to debug at any rate ... |