I can not update portage package 2.0.28 to the current version 2.0.36. I am attempting this on a sytem built from stage3-i686-1.4.tbz2 at http://www.ibiblio.org/pub/Linux/distributions/gentoo/releases/build/.1.4/x86/i686/ When attempting to update the portage package, the system stalls at the beginning when it begins to check for glibc subversion. It will sit indefinitely. I did a ctrl+c to end the update. Here is the output: [root /]# emerge --buildpkg --update world Calculating dependencies ...done! >>> emerge sys-apps/portage-2.0.36 to / >>> Unpacking source... >>> Source unpacked. ./create-localdecls Checking truncate argument type... off_t Checking libc version... libc.so.6 Checking glibc subversion... !!! Portage interrupted by SIGINT; exiting. make: *** Deleting file `localdecls.h' make: *** [localdecls.h] Interrupt *** Compilation Aborted *** PORTAGE: Checking for Sandbox (compile)... PORTAGE: No Sandbox running, deleting /etc/ld.so.preload! Killed [root /]# I am able to 'emerge rsync', install and update other packages, but cannot update the portage package. I thought that possibly the problem might lie in glibc. I was using 2.2.5-r7, and 'update world' was trying to revert back to the 2.2.5-r6 version. I installed glibc 2.2.5-r6, cleaned out 2.2.5-r7, but the problem updating portage remains. My compiler flags are the default for a Pentium2. IIRC 'march=i686 -03 -pipe'. I've edited my USE variables somewhat. I originally posted this problem to the Gentoo forums to see if anyone else had a similar issue. If you wish to check that for more info, here is the url: http://forums.gentoo.org/viewtopic.php?t=14323 If there is any clarification that you need, you can contact me at gentoo@t011.com Thanks t011
I found what I consider to be the cause of and solution to this bug. The true cause of this bug was that the version of bash I was using was staticly compiled rather than being dynamically linked, as is the default ebuild for bash. I had edited my bash ebuild and built a staticly compiled bash. Anyway, in the ebuild for portage-2.0.36, one of the scripts in the package (portage-2.0.36/src/sandbox-1.1/create-localdecls) calls this set of code in the install if test "$VERSION" = 'libc.so.6' ; then echo -n 'Checking glibc subversion... ' tmp="`ldd /bin/sh | grep libc.so 2> /dev/null`" So the problem was that when the 'ldd /bin/sh' was sent to grep there wasn't any info to sort through to find out where libc resides. So to fix this I edited the statement and swapped /bin/sh for /bin/su because I know it's dynamically linked, reformed the tarball, and performed an emerge and everything emerged fine. I still consider this a bug though, since ther are many people who like to have root's shell staticly linked. It would be nice if rather than using /bin/sh, some other dynamically linked program (/bin/su maybe) could be used instead. So that this editing wouldn't be necessary. Thanks for your time. t011
Azarah: The problem was /bin/sh being static, causing problems with ldd, but it's all dynamic now, apparently, so this isn't an issue anymore. Is this really how it should be? I figured I'd pass it at you for your input as system stuff is your area. /bin is dynamic. Shouldn't it be static? /usr fs errors can cause major problems in this case.
Well, if somebody will be so kind as to write us a ptrace based sandbox I guess we can have them static ?
reopen if still an issue in some way.
Is same issue here on upgrading from 2.0.49-r10 to portage-2.0.49-r15 Checking glibc subversion... Caught signal 2 make: *** Deleting file `localdecls.h' make: *** [localdecls.h] Interrupt root@thrall phil # ldd /bin/sh not a dynamic executable Please reopen this bug.
Oh my god. I hardly find dynamic binaries on my box. (Or at least ldd does tell me this fact) I don't think I changed anything that hard that it could cause this. The normal gcc output is dynamic but most binaries on my box are not and I recently noticed many emerge failure as of shared libraries. phil@thrall ben $ emerge info Portage 2.0.49-r10 (default-x86-1.4, gcc-3.3.1, glibc-2.3.2-r6, 2.4.20-g2-r8-pp) ================================================================= System uname: 2.4.20-g2-r8-pp i686 Pentium III (Katmai) Gentoo Base System version 1.4.3.11 ccache version 2.3 [enabled] ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-O3 -march=pentium3 -funroll-loops -pipe -fomit-frame-pointer -frerun-loop-opt -falign-functions=4 -fforce-mem -ffast-math -finline-functions -foptimize-sibling-calls -mmmx -fstack-protector" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/config /usr/kde/3/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O3 -march=pentium3 -funroll-loops -pipe -fomit-frame-pointer -frerun-loop-opt -falign-functions=4 -fforce-mem -ffast-math -finline-functions -foptimize-sibling-calls -mmmx -fstack-protector -Wno-deprecated" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs" GENTOO_MIRRORS="http://mirrors.sec.informatik.tu-darmstadt.de/gentoo http://www.mirror.ac.uk/sites/www.ibiblio.org/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="x86 crypt gif imlib jpeg motif ncurses nls pdflib png xml2 zlib gdbm berkdb slang readline tcpd pam libwww perl python apache acl gd imap innodb ipv6 maildir mbox memlimit sasl slp snmp sse -oss -3dnow -apm -arts -avi -cups -encode -foomaticdb -gpm -gtk -java -kde -gnome -libg++ -mad -mikmod -mpeg -oggvorbis -opengl -qt -quicktime -sdl -spell -svga -truetype -X -xmms -xv ssl -apache2 mysql" Probably this leads me to file a new bug, but I don't know really against what as I don't know what led to this failure.