Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 50127 - glibc-2.3.3_pre20040420 ... can't find a register in class `BREG' while reloading `asm'
Summary: glibc-2.3.3_pre20040420 ... can't find a register in class `BREG' while reloa...
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: x86 Linux
: High major (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 53841
  Show dependency tree
 
Reported: 2004-05-05 12:55 UTC by Tom
Modified: 2004-06-14 03:58 UTC (History)
2 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tom 2004-05-05 12:55:09 UTC
I've gotten the same error on two seperate systems, one a workstation, one a webserver.  Just about anything I want to emerge, particularly emerge -uD world, tries to emerge glibc-2.3.3_pre20040420 as a dependancy.  It fails every time with the same error, but in different files each time:  

../sysdeps/generic/check_fds.c: In function `check_one_fd':
../sysdeps/generic/check_fds.c:52: error: can't find a register in class `BREG' while reloading `asm'
distcc[23896] ERROR: compile on 207.207.207.157 failed
make[2]: *** [/var/tmp/portage/glibc-2.3.3_pre20040420/work/glibc-2.3.2/buildhere/csu/check_fds.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory `/var/tmp/portage/glibc-2.3.3_pre20040420/work/glibc-2.3.2/csu'
make[1]: *** [csu/subdir_lib] Error 2
make[1]: Leaving directory `/var/tmp/portage/glibc-2.3.3_pre20040420/work/glibc-2.3.2'
make: *** [all] Error 2

!!! ERROR: sys-libs/glibc-2.3.3_pre20040420 failed.
!!! Function src_compile, Line 536, Exitcode 2
!!! (no error message)

The two systems use distcc, and compile for each other.  They are equally updated versions of gentoo, but with different make.conf options.  The error does not appear when distcc is not used.  So I see two possible courses of action... 1) fix the problem in the code 2) tell portage to compile it locally.  If #2, I hope there is a way to do this automatically without user intervention?
Comment 1 Mr. Bones. (RETIRED) gentoo-dev 2004-05-05 13:56:45 UTC
reopen with output of emerge --info please.
Comment 2 Tom 2004-05-05 14:15:58 UTC
This is after I disabled distcc and compiled glibc locally...

Portage 2.0.50-r6 (default-x86-2004.0, gcc-3.3.3, glibc-2.3.3_pre20040420-r0, 2.6.5)
=================================================================
System uname: 2.6.5 i686 Intel(R) Pentium(R) 4 CPU 2.00GHz
Gentoo Base System version 1.4.9
distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled]
ccache version 2.3 [enabled]
Autoconf: sys-devel/autoconf-2.59-r3
Automake: sys-devel/automake-1.8.3
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-march=pentium4 -O3 -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=pentium4 -O3 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs ccache distcc sandbox"
GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="X X509 alsa amd apache1 apache2 apm async audiofile autofs avi berkdb bonobo cap cddb cdf cdr cgi crypt cups curl dedicated dga distribution dnd dnsdb doc dv dvb dvd dvdr encode escreen esd evo ext-png ext-zlib extlib fastcgi fax fbcon fbdev flash fluidsynth fmod foomaticdb freetds freetype fs fwdzone gb gd gdbm gif gimpprint glgd gmtsuppl gnome gphoto2 gpm gps gsl gstreamer gtk gtk2 gtkhtml hardened hbci ieee1394 imagemagick imap imlib imlib2 innodb java javascript jbig jikes jpeg justify krb4 ladcca lcd lcms ldap libg++ libsamplerate libwww ltsp lufsusermount mad matroska mbox mcal md5sum mdb migemo mikmod milter mldonkeypango mng mono motif mozcalendar mozctl mozilla moznocompose mozp3p mozsvg mozxmlterm mpeg mpeg4 music mysql nagios-dns nagios-ntp nagios-ping nagios-ssh nas ncurses net nls nntp nptl oav oci8 odbc offensive ofx oggvorbis opengl openssh operanom2 orathreads oss pam parse-clocks passfile pcap pdflib perl pg-hier pg-intdatetime pg-vacuumdelay php physfs pic pie plotutils png postgres ppds prelude propolice psyco pthreads python quicktime radius readline rhino rplay samba sasl savedconfig scanner sdl skey slang slp snmp socks5 speedo speex spell ssl stencil-buffer stroke svga t1lib tcltk tcpd tcsim theora tiff transcode transparent-proxy truetype type1 unicode usb v4l v4l2 vda vhosts video_cards_i810 videos virus-scan vpopmail wmf wsconvert x86 xerces xine xinerama xml xml2 xmms xv xvid yaz zeo zlib"
Comment 3 Lisa Seelye (RETIRED) gentoo-dev 2004-05-05 18:05:12 UTC
Are you using hardened-gcc on any machine, or -fPIC anywhere?
Comment 4 Tom Anderson 2004-05-06 05:56:54 UTC
I didn't explicitely select the "hardened" distribution or kernel, however "hardened" is in my "USE" options since it looked useful in "ufed", so if there was a gcc update recently, then during routine updates, gcc may have compiled with "hardened" code.  Also, in compiling other software right now, I do see "-fpic" passed in.  

What is the significance of this in compiling with distcc vs. locally?  If I remove the "hardened" option, should code compile with distcc again without trouble, or would I have to recompile gcc first?  Shouldn't portage be able to recognize that "hardened" is selected, and therefore disable remote compiling for programs where it is known to cause a problem?
Comment 5 Lisa Seelye (RETIRED) gentoo-dev 2004-05-23 13:02:48 UTC
It's hard to say really what effect hardened USE flag has.  Puggy?  I DO know that having hardened-gcc on one box and not another will cause issues.
Comment 6 Joshua Kinard gentoo-dev 2004-06-11 22:42:36 UTC
Lisa, hope you don't mind, but this seems to fall more into the toolchain arena of fun fun issues we've been dealing with in regards to the toolchain.  I myself have seen this error while using hardened+nptl in USE, using binutils-2.15.91.0.1, gcc-3.4.0-r6, and ~glibc-2.3.4.*, and attempting to compile memtest86.

Alot of the oddities are popping up it seems because in binutils-2.15*, relro got added, and that's just causing lots of fun.

Tom, knowing how distcc works, you will likely want to make sure that all your toolchains on your distcc hosts have the *same* exact toolchain as the main system.  This means built w/ the same USE flags, same Major/Minor versions, etc.., especially for gcc.
Comment 7 solar (RETIRED) gentoo-dev 2004-06-14 03:58:20 UTC
Tom, 
If you update your gcc first to >=3.3.3-r6 (the current stable) 
this error will go away for you and others. The hardened USE flag is not
compatible with older versions of the toolchain and the flag-o-matic.eclass

Changing resolution to invalid