Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 290556 - sys-devel/gcc-4.3.4 fails to merge, no gnu/stubs-32.h
Summary: sys-devel/gcc-4.3.4 fails to merge, no gnu/stubs-32.h
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: All Linux
: High major (vote)
Assignee: Gentoo Toolchain Maintainers
Depends on:
Reported: 2009-10-26 11:32 UTC by Dirkjan Ochtman (RETIRED)
Modified: 2009-11-02 22:12 UTC (History)
1 user (show)

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


Note You need to log in before you can comment on or make changes to this bug.
Description Dirkjan Ochtman (RETIRED) gentoo-dev 2009-10-26 11:32:19 UTC
emerge -uDN world after emerge --sync failed while trying to emerge gcc. Weirdly, I had no problems on a bunch of my other boxes.

In file included from /usr/include/features.h:354,
                 from /usr/include/stdio.h:28,
                 from /var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc/../gcc/tsystem.h:90,
                 from /var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc/../gcc/libgcc2.c:33:
/usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or directory
/var/tmp/portage/sys-devel/gcc-4.3.4/work/build/./gcc/xgcc -B/var/tmp/portage/sys-devel/gcc-4.3.4/work/build/./gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include -O -O2  -O2 -g -march=native -O2 -pipe   -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -fno-stack-protector   -I. -I. -I../.././gcc -I/var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc -I/var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc/. -I/var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc/../gcc -I/var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc/../include -I/var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_TLS -o _absvsi2.o -MT _absvsi2.o -MD -MP -MF _absvsi2.dep -DL_absvsi2 -c /var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc/../gcc/libgcc2.c \
          -fvisibility=hidden -DHIDE_EXPORTS
/var/tmp/portage/sys-devel/gcc-4.3.4/work/build/./gcc/xgcc -B/var/tmp/portage/sys-devel/gcc-4.3.4/work/build/./gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -B/usr/x86_64-pc-linux-gnu/lib/ -isystem /usr/x86_64-pc-linux-gnu/include -isystem /usr/x86_64-pc-linux-gnu/sys-include -O -O2  -O2 -g -march=native -O2 -pipe   -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -fno-stack-protector   -I. -I. -I../.././gcc -I/var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc -I/var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc/. -I/var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc/../gcc -I/var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc/../include -I/var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_TLS -o _absvdi2.o -MT _absvdi2.o -MD -MP -MF _absvdi2.dep -DL_absvdi2 -c /var/tmp/portage/sys-devel/gcc-4.3.4/work/gcc-4.3.4/libgcc/../gcc/libgcc2.c \
          -fvisibility=hidden -DHIDE_EXPORTS
make[5]: *** [_negdi2.o] Error 1
make[5]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.3.4/work/build/x86_64-pc-linux-gnu/32/libgcc'
make[4]: *** [multi-do] Error 1
make[4]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.3.4/work/build/x86_64-pc-linux-gnu/libgcc'
make[3]: *** [all-multi] Error 2
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.3.4/work/build/x86_64-pc-linux-gnu/libgcc'
make[2]: *** [all-stage1-target-libgcc] Error 2
make[2]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.3.4/work/build'
make[1]: *** [stage1-bubble] Error 2
make[1]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.3.4/work/build'
make: *** [bootstrap-lean] Error 2
 * ERROR: sys-devel/gcc-4.3.4 failed.
 * Call stack:
 *     , line   49:  Called src_compile
 *             environment, line 4938:  Called toolchain_src_compile
 *             environment, line 5464:  Called gcc_src_compile
 *             environment, line 3110:  Called gcc_do_make
 *             environment, line 2900:  Called die
 * The specific snippet of code:
 *  The die message:
 *   emake failed with bootstrap-lean
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/sys-devel/gcc-4.3.4/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-devel/gcc-4.3.4/temp/environment'.

emerge --info

Portage (default/linux/amd64/10.0, gcc-4.3.4, glibc-2.9_p20081201-r2, 2.6.23-gentoo-r8 x86_64)
System uname: Linux-2.6.23-gentoo-r8-x86_64-Intel-R-_Xeon-R-_CPU_X3220_@_2.40GHz-with-gentoo-
Timestamp of tree: Fri, 23 Oct 2009 10:15:01 +0000
app-shells/bash:     4.0_p28
dev-lang/python:     2.6.2-r1
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.63-r1
sys-devel/automake:  1.10.2
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.27-r2
CFLAGS="-march=native -O2 -pipe"
CONFIG_PROTECT="/etc /var/qmail/alias /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-march=native -O2 -pipe"
FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
USE="acl amd64 bash-completion bzip2 cracklib crypt ctypes-python expat gd gdbm gpm iconv ipv6 jpeg lapack mmx modules mpm-worker mudflap multilib ncurses nls nptl nptlonly offensive openmp pam pcre png python readline sdl session sqlite sqlite3 sse sse2 ssl svg sysfs tcpd threads threadsafe truetype unicode 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 mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_default                  authn_file authz_default authz_groupfile authz_host autoindex                  cache deflate dir disk_cache env expires ext_filter logio                  file_cache filter headers ident info log_config mem_cache                  mime mime_magic negotiation proxy proxy_connect proxy_http                  rewrite setenvif so status unique_id usertrack vhost_alias" APACHE2_MPMS="worker" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga neomagic nv r128 radeon savage sis tdfx trident vesa vga via vmware voodoo"

Reproducible: Always
Comment 1 Dirkjan Ochtman (RETIRED) gentoo-dev 2009-10-26 12:13:43 UTC
Found the likely cause: there's apparently a new multilib useflag (or it was enabled by migrating to the 10.0 profile), and emerge is trying to merge gcc before glibc. This seems like a bad idea...
Comment 2 Dirkjan Ochtman (RETIRED) gentoo-dev 2009-10-26 12:30:32 UTC
PolyC also pointed out 289295, which seems to cope with similar problems. This system has been installed for years, though, so it shouldn't be a problem with the stages. I did just switch to the 10.0 profile today, which might have something to do with it. In any case, emerging glibc before gcc doesn't help, I get the following error:

checking how to run the C preprocessor... /lib/cpp
configure: error: C preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details.
 * ERROR: sys-libs/glibc-2.9_p20081201-r2 failed.
 * Call stack:
 *     , line   49:  Called src_compile
 *             environment, line 3730:  Called eblit-run 'src_compile'
 *             environment, line 1217:  Called eblit-glibc-src_compile
 *       src_compile.eblit, line  195:  Called src_compile
 *             environment, line 3730:  Called eblit-run 'src_compile'
 *             environment, line 1217:  Called eblit-glibc-src_compile
 *       src_compile.eblit, line  203:  Called toolchain-glibc_src_compile
 *       src_compile.eblit, line  121:  Called glibc_do_configure 'nptl'
 *       src_compile.eblit, line   98:  Called die
 * The specific snippet of code:
 *      "${S}"/configure ${myconf} || die "failed to configure glibc"
 *  The die message:
 *   failed to configure glibc
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/tmp/portage/sys-libs/glibc-2.9_p20081201-r2/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-libs/glibc-2.9_p20081201-r2/temp/environment'.
Comment 3 Dirkjan Ochtman (RETIRED) gentoo-dev 2009-10-27 10:38:06 UTC
Can I please get some toolchain guys to look at this?

djc@turing gcc $ emerge -upvDN world

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] sys-devel/gcc-4.3.4  USE="mudflap (multilib*) nls nptl openmp (-altivec) -bootstrap -build -doc (-fixed-point) -fortran -gcj -gtk (-hardened) -ip28 -ip32r10k (-libffi) -multislot (-n32) (-n64) -nocxx -nopie -objc -objc++ -objc-gc -test -vanilla" 0 kB
[ebuild   R   ] sys-libs/glibc-2.9_p20081201-r2  USE="gd (multilib*) nls -debug -glibc-omitfp (-hardened) -profile (-selinux) -vanilla" 0 kB

gcc doesn't want to compile because I have no compatible libc, glibc doesn't want to configure because it cannot compute sizeof (long double). I'm not sure why it's trying to enable multilib all of a sudden (I did switch from 2008.0 to 10.0 just before this problem came up, though).
Comment 4 SpanKY gentoo-dev 2009-10-27 12:41:40 UTC
switching on the fly from a non-multilib to a multilib profile is known to not work automatically.  it can be done, but only if you know the inner details.

short answer: dont do it.  you selected non-multilib during install (or you disabled it along the way), and there's no going back.