Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 255442 - sys-libs/glibc-2.9_p20081201-r1: broken toolchain
Summary: sys-libs/glibc-2.9_p20081201-r1: broken toolchain
Status: RESOLVED NEEDINFO
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GCC Porting (show other bugs)
Hardware: AMD64 Linux
: High major (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-01-18 21:42 UTC by Jimmy.Jazz
Modified: 2009-01-23 13:41 UTC (History)
0 users

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


Attachments
ebuild log (sys-libs:glibc-2.9_p20081201-r1:20090118-203911.log,204.87 KB, text/plain)
2009-01-18 21:43 UTC, Jimmy.Jazz
Details
sandbox log (sys-apps:sandbox-1.3.2:20090119-232109.log,50.34 KB, text/plain)
2009-01-19 23:37 UTC, Jimmy.Jazz
Details
sys.lst used for the test (sys.lst,10.03 KB, text/plain)
2009-01-21 16:14 UTC, Jimmy.Jazz
Details
glibc log (sys-libs:glibc-2.9_p20081201-r1:20090122-194211.log,1.37 KB, text/plain)
2009-01-22 19:54 UTC, Jimmy.Jazz
Details
same log as 179374 + debug (sys-libs:glibc-2.9_p20081201-r1:20090122-195052.log,70.56 KB, text/plain)
2009-01-22 20:00 UTC, Jimmy.Jazz
Details
glibc log with an other king of error (sys-libs:glibc-2.9_p20081201-r1:20090122-190450.log.gz,150.51 KB, text/plain)
2009-01-22 20:22 UTC, Jimmy.Jazz
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jimmy.Jazz 2009-01-18 21:42:23 UTC
That's the only package I was unable to recompile successfully. gcc generates many conflicting type errors and it tries to generate code for i386. Also, the current glibc version already installed is the same.

# gcc-config -c
x86_64-pc-linux-gnu-4.3.2

# gcc-config -l
 [1] x86_64-pc-linux-gnu-4.3.2 *
 [2] x86_64-pc-linux-uclibc-4.3.2 *

# eselect profile list
Available profile symlink targets:
  [1]   hardened/amd64
  [2]   hardened/amd64/multilib
  [3]   selinux/2007.0/amd64
  [4]   selinux/2007.0/amd64/hardened
  [5]   default/linux/amd64/2008.0 *
  [6]   default/linux/amd64/2008.0/desktop
  [7]   default/linux/amd64/2008.0/developer
  [8]   default/linux/amd64/2008.0/no-multilib
  [9]   default/linux/amd64/2008.0/server
  [10]  hardened/linux/amd64



Reproducible: Always

Steps to Reproduce:
1. emerge -1 glibc
2.
3.




# emerge --info
Portage 2.2_rc22 (default/linux/amd64/2008.0, gcc-4.3.2, glibc-2.9_p20081201-r1, 2.6.29-rc2-radeon x86_64)
=================================================================
System uname: Linux-2.6.29-rc2-radeon-x86_64-AMD_Athlon-tm-_64_Processor_3200+-with-glibc2.2.5
Timestamp of tree: Sun, 18 Jan 2009 17:45:01 +0000
distcc 3.1 x86_64-pc-linux-gnu [disabled]
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p39
dev-java/java-config: 1.3.7-r1, 2.1.6-r1
dev-lang/python:     2.5.2-r8
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r8
dev-util/cmake:      2.6.2-r1
sys-apps/baselayout: 1.12.12
sys-apps/sandbox:    1.3.2
sys-devel/autoconf:  2.13, 2.63
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.19
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.28-r1
ACCEPT_KEYWORDS="amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -O3 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/splash/livecd-2007.0/1280x1024.cfg /lib/rcscripts/addons /sbin/rc /sbin/splash-functions-bl1.sh /sbin/splash-functions.sh /usr/local/share/cursors/xorg-x11/default/index.theme /usr/share/hddtemp/hddtemp.db /usr/src/linux/.config /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=k8 -O3 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache collision-protect distlocks fixpackages parallel-fetch preserve-libs protect-owned sandbox sfperms splitdebug strict unmerge-orphans userfetch userpriv"
GENTOO_MIRRORS="ftp://ftp.free.fr/mirrors/ftp.gentoo.org/ http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/"
LANG="fr_FR.UTF-8"
LC_ALL="fr_FR.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="fr"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/x11 /usr/portage/local/java /usr/portage/local/overlay /usr/portage/local/layman/sunrise /usr/portage/local/layman/zumastor /usr/portage/local/layman/secondlife /usr/portage/local/layman/gnome /usr/portage/local/layman/genscripts /usr/portage/local/layman/tryton"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X a52 aac acl acpi alsa amd64 avahi bash-completion bluetooth boost bzip2 cairo caps cli cracklib crypt cups curl dbus dga dlloader dri dts dv dvb dvdr exif expat fam fastcgi ffmpeg firefox flac fontconfig fuse gd gdbm gif glib gmp gnome gnome-keyring gnutls gphoto2 gpm gsl gstreamer gtk guile hal iconv icu ieee1394 imap imlib isdnlog jack jpeg jpeg2k lame lash lcms libedit libnotify libsamplerate libwww lirc logrotate lua lzo mad maildir mailwrapper matroska midi mmap mmx mmxext mng mp3 mpeg mudflap multilib musepack mysql ncurses network-cron newspr nls nptl nptlonly ogg openal openexr opengl openmp pam pch pcre pdf perl png posix pppd pulseaudio python qt4 quicktime readline reflection ruby sasl schroedinger sdl session slang smp sndfile speex spell spl sse sse2 ssl startup-notification svg sysfs sysvipc tcpd theora threads tiff truetype udev unicode urandom usb userlocales v4l v4l2 vhosts vim-syntax vorbis wmf wxwindows x264 xattr xcb xinetd xml xmp xorg xpm xulrunner xv xvid zeroconf zlib" ALSA_CARDS="intel8x0 usb-audio" 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_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" APACHE2_MPMS="worker" CAMERAS="ptp2" DVB_CARDS="usb-wt220u" ELIBC="glibc" INPUT_DEVICES="joystick evdev wacom" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="fr" LIRC_DEVICES="devinput userspace" USERLAND="GNU" VIDEO_CARDS="radeon r300 vesa"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 1 Jimmy.Jazz 2009-01-18 21:43:18 UTC
Created attachment 178928 [details]
ebuild log
Comment 2 Jimmy.Jazz 2009-01-18 21:46:47 UTC
*  sys-kernel/linux-headers
      Latest version available: 2.6.28-r1
      Latest version installed: 2.6.28-r1
Comment 3 Jimmy.Jazz 2009-01-19 23:37:02 UTC
Created attachment 179052 [details]
sandbox log

What a mess. I have now the same issue with sandbox ebuild. It won't compile for ABI=x86 again. The toolchain seems broken for amd64.
Comment 4 Jimmy.Jazz 2009-01-21 16:11:22 UTC
I finally managed to compile glibc and sandbox after upgrading to sys-apps/portage-2.2_rc23, uninstalled sys-power/pm-utils to avoid the pkg-config bug during a full emerge. Also, this time the distccd server was down during the compilation.

The bug should still be taken in consideration. It shouldn't append and the problem could be related to the modification I have made above. Moreover, the issue is quite similar as when you do a crossdev -t x86_64-pc-linux-uclibc. The compilation won't pass stage 4.

To illustrate the process, I made a little script without any pretention that read a simplified list that is the result of emerge -ep @system output. 

#!/bin/sh

trap "exit 2" INT TERM

liste=$1
options=$2
succes=/root/succes.lst
retry=/root/retry.lst

#> ${succes}
#> ${retry}
for i in $(grep -v "^#" < ${liste}); do
	echo
	echo "proceed ${i}"
	emerge -1${options} ${i} || echo ${i} >> ${retry}
	echo ${i} >> ${succes}
done

see attachment for the packages list used.

emerge -ep @system > sys.lst
sed -i -e '1,4d;s/\[ebuild ......\] /=/;s/ .*$//;1,1s/^/#/' sys.lst

please be careful about emerge -1. It doesn't stay any packages that request an upgrade. All the packages need to be marked with a R in sys.lst
Comment 5 Jimmy.Jazz 2009-01-21 16:14:05 UTC
Created attachment 179183 [details]
sys.lst used for the test
Comment 6 SpanKY gentoo-dev 2009-01-21 16:30:42 UTC
try building with distcc disabled.  if that works, clear the ccache of all your machines and try again with distcc enabled.
Comment 7 Jimmy.Jazz 2009-01-22 19:54:48 UTC
Created attachment 179374 [details]
glibc log

the worst case,

ccache -C
ccache -z

# set | grep -i ccache
CCACHE_DIR=/var/lib/cache/ccache
CCACHE_LOGFILE=/var/log/ccache.log
CCACHE_NOLINK=
CCACHE_PREFIX=
CCACHE_UMASK=002

cat /etc/make.conf
FEATURES="-distcc ccache userpriv sandbox parallel-fetch userfetch fixpackages collision-protect splitdebug"

There is a missing file when CCACHE_PREFIX is null.

No such file or directory
 * Checking gcc for __thread support ...                                  [ !! ]

Next log with debug mode activated. Same condition.
Comment 8 Jimmy.Jazz 2009-01-22 20:00:27 UTC
Created attachment 179375 [details]
same log as 179374 + debug
Comment 9 Jimmy.Jazz 2009-01-22 20:22:04 UTC
Created attachment 179376 [details]
glibc log with an other king of error

Same condition as before but CCACHE_PREFIX has been set
CCACHE_PREFIX="distcc"

# set | grep -i cache
CCACHE_DIR=/var/lib/cache/ccache
CCACHE_LOGFILE=/var/log/ccache.log
CCACHE_NOLINK=
CCACHE_PREFIX=distcc
CCACHE_UMASK=002
DISTCC_DIR=/var/lib/cache/distcc

ccache has been flushed and stat reset

After emerge failed

#  ccache -s
cache directory                     /var/lib/cache/ccache
cache hit                             34
cache miss                          4273
called for link                       58
multiple source files                  1
compile failed                        30
preprocessor error                    26
not a C/C++ file                     623
autoconf compile/link                355
unsupported compiler option          361
no input file                        165
files in cache                      8546
cache size                          53.2 Mbytes
max cache size                     976.6 Mbytes

The ccache of the distccd server has been reset too. Also there was no activity of distccd daemon when during the time emerge has been run. Controled with distccmon-gnome gui. Just four jobs on localhost were working.

The error is reproducible but not permanent. Also, the type of error depend on the ccache variables value.

genlop glibc
   Mon Dec  8 13:04:17 2008 >>> sys-libs/glibc-2.9_p20081201
   Sat Jan 10 18:32:00 2009 >>> sys-libs/glibc-2.9_p20081201-r1
   Tue Jan 20 14:12:21 2009 >>> sys-libs/glibc-2.9_p20081201-r1
Comment 10 Jimmy.Jazz 2009-01-23 13:41:23 UTC
After unsuccessful emerging of the anjuta package, I took a look at ccache log file. It is filed with lines of,

argument -x is unsupported

When disabling ccache in FEATURES, that package is able to compile again.

That is certainly a part of the problem.