Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 136968 - glibc: configure: error: cannot compute sizeof (long double)
Summary: glibc: configure: error: cannot compute sizeof (long double)
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: AMD64 Linux
: Highest major (vote)
Assignee: AMD64 Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-06-16 02:53 UTC by Mudrii
Modified: 2006-06-22 14:17 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
config Log glibc (config.log,41.34 KB, text/plain)
2006-06-16 02:55 UTC, Mudrii
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mudrii 2006-06-16 02:53:13 UTC
Portage 2.1 (default-linux/amd64/2006.0, gcc-3.4.5, glibc-2.3.6-r3, 2.6.16-gentoo-r9 x86_64)
=================================================================
System uname: 2.6.16-gentoo-r9 x86_64 AMD Athlon(tm)64 X2 Dual Core Processor  3800+
Gentoo Base System version 1.6.14
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.3 [enabled]
dev-lang/python:     2.4.2
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.3
dev-util/confcache:  0.4.2-r1
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1
sys-devel/binutils:  2.16.1-r2
sys-devel/gcc-config: 1.3.13-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="amd64"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -O2 -pipe -fomit-frame-pointer -msse3"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/terminfo"
CXXFLAGS="-march=k8 -O2 -pipe -fomit-frame-pointer -msse3"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="ftp://ftp.ecc.u-tokyo.ac.jp/GENTOO http://gentoo.gg3.net/ ftp://gg3.net/pub/linux/gentoo/"
MAKEOPTS="-j3"
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/portage"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="amd64 acpi apache2 cli crypt dbx dri fam fortran ftp glibc-omitfp isdnlog ithreads lm_sensors logrotate mysql mysqli ncurses nls nptl nptlonly pam pcre perl posix pppd python readline reflection session sharedext simplexml sockets spl sqlite ssl symlink tcpd threads tokenizer unicode userlocales verbose xinetd xml xmlrpc xorg zlib elibc_glibc kernel_linux userland_GNU"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS

On recompilation toolchane I get an error for glibc
Error I get

checking whether --noexecstack is desirable for .S files... yes
checking for -z combreloc... yes
checking for -z execstack... yes
checking for -fpie... yes
checking for -fno-unit-at-a-time... yes
checking for -fstack-protector... yes
checking whether cc puts quotes around section names... no
checking for assembler .weak directive... yes
checking whether CFI directives are supported... yes
checking if -g produces usable source locations for assembler-with-cpp... yes
checking for ld --no-whole-archive... yes
checking for gcc -fexceptions... yes
checking for DWARF2 unwind info support... no_registry_needed
checking for __builtin_expect... yes
checking for __builtin_memset... no
checking for redirection of built-in functions... yes
checking for local label subtraction... yes
checking for __thread... yes
checking for tls_model attribute... yes
checking for libgd... no
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for long double... yes
checking size of long double... configure: error: cannot compute sizeof (long double), 77
See `config.log' for more details.

!!! ERROR: sys-libs/glibc-2.3.6-r3 failed.
Call stack:
  ebuild.sh, line 1539:   Called dyn_compile
  ebuild.sh, line 939:   Called src_compile
  glibc-2.3.6-r3.ebuild, line 1227:   Called src_compile
  glibc-2.3.6-r3.ebuild, line 1238:   Called toolchain-glibc_src_compile
  glibc-2.3.6-r3.ebuild, line 259:   Called glibc_do_configure 'nptl'
  glibc-2.3.6-r3.ebuild, line 975:   Called die

!!! failed to configure glibc
!!! If you need support, post the topmost build error, and the call stack if relevant.

How can I fix the problem with glibc 
Thank you
Comment 1 Mudrii 2006-06-16 02:55:58 UTC
Created attachment 89290 [details]
config Log glibc

This is a config.log after glibc failed to compile.
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2006-06-16 03:16:50 UTC
Check that you have CONFIG_IA32_EMULATION=y in your kernel.

Comment 3 Mudrii 2006-06-16 03:21:01 UTC
I have this option in the kernel 
 
cat /usr/src/linux/.config | grep CONFIG_IA32_EMULATION
CONFIG_IA32_EMULATION=y
Comment 4 Mudrii 2006-06-16 03:25:56 UTC
Before this problem I update to the kernel gcc-3.4.5 and all compiles but not glibc

I have another box with same config only runs gcc-4.1.1 and try to make a binary package and move to the problem PC and same error get again
Comment 5 Simon Stelling (RETIRED) gentoo-dev 2006-06-16 09:38:08 UTC
configure:7527: x86_64-pc-linux-gnu-gcc -o conftest -march=k8 -pipe -O2   conftest.c  >&5
configure:7530: $? = 0
configure:7532: ./conftest
libsandbox:  Can't resolve getcwd: (null)
configure:7535: $? = 1
configure: program exited with status 1

You're having sandbox problems, so setting FEATURES=-sandbox should work as a workaround for the time being
Comment 6 Mudrii 2006-06-16 20:51:09 UTC
Try to emerge glibc with FEATURES=-sandbox and same error 

checking for long double... yes
checking size of long double... configure: error: cannot compute sizeof (long double), 77
See `config.log' for more details.

!!! ERROR: sys-libs/glibc-2.4-r3 failed.
Call stack:
  ebuild.sh, line 1539:   Called dyn_compile
  ebuild.sh, line 939:   Called src_compile
  glibc-2.4-r3.ebuild, line 1169:   Called src_compile
  glibc-2.4-r3.ebuild, line 1180:   Called toolchain-glibc_src_compile
  glibc-2.4-r3.ebuild, line 262:   Called glibc_do_configure 'nptl'
  glibc-2.4-r3.ebuild, line 952:   Called die

!!! failed to configure glibc
!!! If you need support, post the topmost build error, and the call stack if relevant.


Same problem with emerging sandbox

Some other fixeas > ?
Comment 7 Martin Schlemmer (RETIRED) gentoo-dev 2006-06-17 07:07:52 UTC
Looks like 32bit toolchain is broken or missing (which would explain the sandbox issues as well if 32bit libc is missing).
Comment 8 Mudrii 2006-06-17 17:49:14 UTC
how can be fixed this error ?
Comment 9 Mike Doty (RETIRED) gentoo-dev 2006-06-17 17:53:39 UTC
try resetting your compiler with eselect compiler or gcc-config. then 'source /etc/profile'
Comment 10 Mudrii 2006-06-18 03:33:03 UTC
no work changing the compiler
Comment 11 Mark Anders 2006-06-20 20:04:14 UTC
I had this same problem, but I seem to have fixed it now. I tried compiling a short c++ program: 
 #include <iostream> 
 
 int main() { 
 std::cout << "sizeof(char) = " << sizeof(char) << std::endl; 
 std::cout << "sizeof(short) = " << sizeof(short) << std::endl; 
 std::cout << "sizeof(int) = " << sizeof(int) << std::endl; 
 std::cout << "sizeof(long) = " << sizeof(long) << std::endl; 
 std::cout << "sizeof(long long) = " << sizeof(long long) << std::endl; 
 std::cout << "sizeof(float) = " << sizeof(float) << std::endl; 
 std::cout << "sizeof(double) = " << sizeof(double) << std::endl; 
 std::cout << "sizeof(long double) = " << sizeof(long double) << std::endl; 
 return 0; 
 } 
 
 It ran fine under 64bit mode. Then I recompiled with the -m32 switch. Compilation was fine, but it wouldn't run. I checked and the dynamic linker was set to /lib/ld-linux.so.2 which wasn't there. So I created a symbolic link from that to /lib32/ld-linux.so.2. Now it worked. I'm guessing maybe the compiler was messed up in the specs file which is where the dynamic linker is normally defined. Hope this helps . . .
Comment 12 Mudrii 2006-06-21 09:52:11 UTC
yup
/lib32 was missing from /etc/ld.so.conf

echo "/lib32" >> /etc/ld.so.conf
ldconfig	

fixed the problem

original post on http://forums.gentoo.org/viewtopic-t-448885.html
Comment 13 Simon Stelling (RETIRED) gentoo-dev 2006-06-22 14:17:51 UTC
alright