Hello, I have the same problem on my x86 laptop and my x86_64 workstation Calculating world dependencies ...done! >>> emerge (1 of 1) app-shells/gentoo-bashcomp-20050516 to / >>> md5 files ;-) gentoo-bashcomp-20050516.ebuild >>> md5 files ;-) gentoo-bashcomp-20050506.ebuild >>> md5 files ;-) files/digest-gentoo-bashcomp-20050506 >>> md5 files ;-) files/digest-gentoo-bashcomp-20050516 >>> md5 src_uri ;-) gentoo-bashcomp-20050516.tar.bz2 >>> Unpacking source... >>> Unpacking gentoo-bashcomp-20050516.tar.bz2 to /var/tmp/portage/gentoo-bashcomp-20050516/work >>> Source unpacked. Nothing to compile. >>> Test phase [not enabled]: app-shells/gentoo-bashcomp-20050516 >>> Install gentoo-bashcomp-20050516 into /var/tmp/portage/gentoo-bashcomp-20050516/image/ category app-shells install -d "/var/tmp/portage/gentoo-bashcomp-20050516/image//usr/share/bash-completion" install -m0644 gentoo "/var/tmp/portage/gentoo-bashcomp-20050516/image//usr/share/bash-completion" install -d "/var/tmp/portage/gentoo-bashcomp-20050516/image//etc/bash_completion.d" ln -snf "../../usr/share/bash-completion/gentoo" \ "/var/tmp/portage/gentoo-bashcomp-20050516/image//etc/bash_completion.d/gentoo" dodoc: NEWS does not exist man: prepallstrip: strip: i686-pc-linux-gnu-strip --strip-unneeded >>> Completed installing gentoo-bashcomp-20050516 into /var/tmp/portage/gentoo-bashcomp-20050516/image/ >>> Merging app-shells/gentoo-bashcomp-20050516 to / --- /etc/ --- /etc/bash_completion.d/ Traceback (most recent call last): File "/usr/bin/emerge", line 3200, in ? mydepgraph.merge(mydepgraph.altlist()) File "/usr/bin/emerge", line 1912, in merge retval=portage.doebuild(y,"merge",myroot,self.pkgsettings,edebug) File "/usr/lib/portage/pym/portage.py", line 2724, in doebuild return merge(mysettings["CATEGORY"],mysettings["PF"],mysettings["D"],mysettings["BUILDDIR"]+"/build-info",myroot,mysettings,myebuild=mysettings["EBUILD"]) File "/usr/lib/portage/pym/portage.py", line 2896, in merge return mylink.merge(pkgloc,infloc,myroot,myebuild) File "/usr/lib/portage/pym/portage.py", line 6893, in merge return self.treewalk(mergeroot,myroot,inforoot,myebuild,cleanup=cleanup) File "/usr/lib/portage/pym/portage.py", line 6502, in treewalk if self.mergeme(srcroot,destroot,outfile,secondhand,"",cfgfiledict,mymtime): File "/usr/lib/portage/pym/portage.py", line 6758, in mergeme if self.mergeme(srcroot,destroot,outfile,secondhand,offset+x+"/",cfgfiledict,thismtime): File "/usr/lib/portage/pym/portage.py", line 6758, in mergeme if self.mergeme(srcroot,destroot,outfile,secondhand,offset+x+"/",cfgfiledict,thismtime): File "/usr/lib/portage/pym/portage.py", line 6683, in mergeme mydest = new_protect_filename(myrealdest, newmd5=portage_checksum.perform_md5(srcroot+myabsto)) File "/usr/lib/portage/pym/portage.py", line 707, in new_protect_filename if portage_checksum.perform_md5(real_dirname+"/"+last_pfile) == newmd5: File "/usr/lib/portage/pym/portage_checksum.py", line 25, in perform_md5 return perform_checksum(x, md5hash, calc_prelink)[0] File "/usr/lib/portage/pym/portage_checksum.py", line 128, in perform_checksum myhash, mysize = hash_function(myfilename) File "/usr/lib/portage/pym/portage_checksum.py", line 75, in md5hash return fchksum.fmd5t(filename) IOError: [Errno 2] No such file or directory: '/etc/bash_completion.d/._cfg0000_gentoo' Reproducible: Always Steps to Reproduce: 1. emerge =app-shells/gentoo-bashcomp-20050516 2. 3. Portage 2.0.51.22-r1 (default-linux/x86/2005.0, gcc-3.4.3-20050110, glibc-2.3.5-r0, 2.6.11-gentoo-r8 i686) ================================================================= System uname: 2.6.11-gentoo-r8 i686 Intel(R) Pentium(R) 4 CPU 2.40GHz Gentoo Base System version 1.6.12 dev-lang/python: 2.3.5 sys-apps/sandbox: 1.2.8 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5 sys-devel/binutils: 2.16 sys-devel/libtool: 1.5.18 virtual/os-headers: 2.6.11 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=pentium4 -O2 -pipe -fomit-frame-pointer -ffast-math" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium4 -O2 -pipe -fomit-frame-pointer -ffast-math" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.server4you.net/ http://gentoo.oregonstate.edu/ http://www.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage/misc /usr/local/portage/lila /usr/local/portage/gnome-current /usr/local/portage/bmg-main" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X aalib acpi acpi4linux alsa anthy artworkextra avi bash-completion berkdb bidi bitmap-fonts bonobo bootsplash canna cdparanoia cdr cjk composite crypt cups curl dbus dga dhcp divx divx4linux dmx dri dvd dvdr dvdread eds emboss encode esd evo evolution f77 faad fam fbcon ffmpeg flac foomaticdb fortran freewnn gaim gdbm gif gimpprint glut gnome gnomedb gnutls gphoto2 gpm gstreamer gtk2 gtkhtml hal howl imagemagick imlib inkjar insecure-drivers iproute java joystick jpeg lcd libg++ libgda libwww live mad matroska mikmod mmx mmx2 mng mono mozilla moznocompose moznoirc moznomail mozsvg mp3 mpeg nas ncurses net network nls nntp no_wxgtk1 nomotif noplugin nptl nvidia objc offensive ogg oggvorbis opengl pam pcmcia pdflib perl pic plugin png pnp python qemu-fast quicktime readline real rtc samba sasl sdl silc skk slang softmmu speex spell sqlite sse sse2 ssl tcpd tiff truetype truetype-fonts type1-fonts unicode usb v4l v4l2 vcd vim-with-x vorbis win32codecs xine xinerama xml xml2 xprint xv xvid zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
attach tar -jtf log of gentoo-bashcomp-20050516.tbz2 ; # please
This is very similar to bug #71787 but not exactly the same. What portage version are you using? (include `emerge info` where appropriate)
# tar -jtf /usr/portage/distfiles/gentoo-bashcomp-20050516.tar.bz2 gentoo-bashcomp-20050516/ gentoo-bashcomp-20050516/TODO gentoo-bashcomp-20050516/Makefile gentoo-bashcomp-20050516/gentoo gentoo-bashcomp-20050516/AUTHORS gentoo-bashcomp-20050516/ChangeLog gentoo-bashcomp-20050516/COPYING
Don't know how I missed the emerge info... Okay, the source is a symlink. The source is not a symlink to a directory. There is something at the destination. The destination is not a symlink. The destination is not a directory. What does that leave? The destination is a file. The source is a symlink to a file. I just emerge bash-completion and confirmed that /etc/bash_completion.d/gentoo is in fact a symlink. Can you confirm that it is a file on your machines? Can you reproduce this easily?
yes those are indeed files on my machines -rw-r--r-- 1 root root 54982 May 15 12:56 /etc/bash_completion.d/gentoo
Does /etc/bash_completion.d/._cfg0000_gentoo exist? I'm still unable to reproduce this bug.
I've got the same bugs lrwxrwxrwx 1 root root 26 avr 2 23:12 /etc/bash_completion.d -> /usr/share/bash-completion/ l /etc/bash_completion.d/ total 200K drwxr-xr-x 2 root root 4,0K mai 28 19:15 ./ drwxr-xr-x 162 root root 4,0K mai 28 08:14 ../ -rw-r--r-- 1 root root 3,2K mai 16 08:48 bash-completion-config -rw-r--r-- 1 root root 1,3K mai 5 12:22 bins -rw-r--r-- 1 root root 388 mai 28 19:14 bitkeeper -rw-r--r-- 1 root root 1,1K mai 28 19:14 bittorrent lrwxrwxrwx 1 root root 38 avr 7 15:58 ._cfg0000_gentoo -> ../../usr/share/bash-completion/gentoo -rw-r--r-- 1 root root 442 mai 28 19:14 cksfv -rw-r--r-- 1 root root 669 mai 28 19:14 clisp -rw-r--r-- 1 root root 3,6K mai 28 19:14 dsniff -rw-r--r-- 1 root root 1,3K mai 28 19:14 freeciv -rw-r--r-- 1 root root 603 mai 28 19:14 gcl -rw-r--r-- 1 root root 2,3K avr 9 18:48 genlop -rw-r--r-- 1 root root 55K mai 28 19:15 gentoo -rw-r--r-- 1 root root 668 mai 28 19:14 gkrellm -rw-r--r-- 1 root root 1,3K mai 28 19:14 gnatmake -rw-r--r-- 1 root root 258 mai 28 19:14 harbour -rw-r--r-- 1 root root 261 mai 28 19:14 isql -rw-r--r-- 1 root root 1,8K mai 28 19:14 larch -rw-r--r-- 1 root root 163 mai 28 19:14 lilypond -rw-r--r-- 1 root root 644 mai 28 19:14 lisp -rw-r--r-- 1 root root 8,5K mai 28 19:14 mailman -rw-r--r-- 1 root root 1,9K mai 28 19:14 mcrypt -rw-r--r-- 1 root root 1,0K mai 28 19:14 mtx -rw-r--r-- 1 root root 1,2K mai 28 19:14 p4 -rw-r--r-- 1 root root 1,7K mai 28 19:14 povray -rw-r--r-- 1 root root 2,5K mai 28 19:14 ri -rw-r--r-- 1 root root 664 mai 28 19:14 sbcl -rw-r--r-- 1 root root 748 mai 28 19:14 sitecopy -rw-r--r-- 1 root root 406 mai 28 19:14 snownews -rw-r--r-- 1 root root 8,1K mar 27 14:40 subversion -rw-r--r-- 1 root root 491 mai 28 19:14 unace -rw-r--r-- 1 root root 608 mai 28 19:14 unrar I've ._cfg0000_gentoo who is a symlink to gentoo but it's a "red line" Portage 2.0.51.19 (default-linux/x86/2005.0, gcc-3.4.3, glibc-2.3.4.20041102-r1, 2.6.11-gentoo-r9 i686) ================================================================= System uname: 2.6.11-gentoo-r9 i686 AMD Athlon(tm) XP 2100+ Gentoo Base System version 1.4.16 Python: dev-lang/python-2.3.5 [2.3.5 (#1, Apr 29 2005, 17:40:03)] distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [enabled] dev-lang/python: 2.3.5 sys-apps/sandbox: [Not Present] sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.5, 1.7.9-r1, 1.4_p6, 1.6.3, 1.8.5-r3, 1.9.5 sys-devel/binutils: 2.15.92.0.2-r7 sys-devel/libtool: 1.5.16 virtual/os-headers: 2.6.8.1-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=athlon-xp -pipe -O3 -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=athlon-xp -pipe -O3 -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks fixpackages sandbox sfperms strict" GENTOO_MIRRORS="http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ http://ftp.gentoo.skynet.be/pub/gentoo/" LANG="fr_BE@euro" LDFLAGS="-Wl,-O1" LINGUAS="fr en" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/debara/tmp/" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://193.190.198.20/gentoo-portage" USE="x86 3dnow X aalib alsa apm arts avi bash-completion berkdb bitmap-fonts cdr crypt cups curl dvd emboss encode esd exiscan-acl fam flac foomaticdb fortran gd gdbm gif gimpprint gpm gstreamer gtk gtk2 hal imagemagick imap imlib ipv6 java jpeg kde kdeenablefinal ldap libg++ libwww mad maildir mikmod mmx motif mp3 mpeg ncurses network nfs nls nptl nvidia ogg oggvorbis opengl oss pam pdflib perl png ppds python qt quicktime readline samba scanner sdl slang slp snmp speex spell sse ssl svga tcltk tcpd tetex tiff truetype truetype-fonts type1-fonts usb vorbis xine xml xml2 xv zlib linguas_fr linguas_en userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CBUILD, CTARGET, LC_ALL
(In reply to comment #7) > lrwxrwxrwx 1 root root 38 avr 7 15:58 ._cfg0000_gentoo -> > ../../usr/share/bash-completion/gentoo This would explain the IOError, but I am still unable to reproduce it. I have a file at /etc/bash_completion.d/gentoo and a broken symlink at /etc/bash_completion.d/._cfg0000_gentoo but I still don't get a traceback. Would you be able to upgrade to portage-2.0.51.22-r1 and see if you can reproduce it there, please? If you can, please post the traceback (unless it's identical to the original post).
I update portage to 2.0.51.22-r1 and install sandbox-1.2.8 (dependence). The backtrace follow. When I look in the tmp/portage directory, I've got lrwxrwxrwx 1 root root 38 mai 29 10:22 /debara/tmp/portage/gentoo-bashcomp-20050516/image/etc/bash_completion.d/gentoo -> ../../usr/share/bash-completion/gentoo but there is not ..../image/usr/share/bash-completion/gentoo ls -alh /debara/tmp/portage/gentoo-bashcomp-20050516/image/usr/share/bash-completion/ total 8,0K drwxr-xr-x 2 root root 4,0K mai 29 10:23 . drwxr-xr-x 4 root root 4,0K mai 29 10:22 .. I don't know if is it utlil or not. >>> emerge (1 of 4) app-shells/gentoo-bashcomp-20050516 to / >>> md5 files ;-) gentoo-bashcomp-20050516.ebuild >>> md5 files ;-) files/digest-gentoo-bashcomp-20050516 >>> md5 src_uri ;-) gentoo-bashcomp-20050516.tar.bz2 >>> Unpacking source... >>> Unpacking gentoo-bashcomp-20050516.tar.bz2 to /debara/tmp/portage/gentoo-bashcomp-20050516/work >>> Source unpacked. Nothing to compile. >>> Test phase [not enabled]: app-shells/gentoo-bashcomp-20050516 >>> Install gentoo-bashcomp-20050516 into /debara/tmp//portage/gentoo-bashcomp-20050516/image/ category app-shells install -d "/debara/tmp//portage/gentoo-bashcomp-20050516/image//usr/share/bash-completion" install -m0644 gentoo "/debara/tmp//portage/gentoo-bashcomp-20050516/image//usr/share/bash-completion" install -d "/debara/tmp//portage/gentoo-bashcomp-20050516/image//etc/bash_completion.d" ln -snf "../../usr/share/bash-completion/gentoo" \ "/debara/tmp//portage/gentoo-bashcomp-20050516/image//etc/bash_completion.d/gentoo" dodoc: NEWS does not exist man: prepallstrip: strip: i686-pc-linux-gnu-strip --strip-unneeded >>> Completed installing gentoo-bashcomp-20050516 into /debara/tmp//portage/gentoo-bashcomp-20050516/image/ >>> Merging app-shells/gentoo-bashcomp-20050516 to / --- /usr/ --- /usr/share/ --- /usr/share/bash-completion/ >>> /usr/share/bash-completion/gentoo --- /usr/share/doc/ --- /usr/share/doc/gentoo-bashcomp-20050516/ >>> /usr/share/doc/gentoo-bashcomp-20050516/AUTHORS.gz >>> /usr/share/doc/gentoo-bashcomp-20050516/TODO.gz >>> /usr/share/doc/gentoo-bashcomp-20050516/ChangeLog.gz --- /etc/ --- /etc/bash_completion.d/ Traceback (most recent call last): File "/usr/bin/emerge", line 3200, in ? mydepgraph.merge(mydepgraph.altlist()) File "/usr/bin/emerge", line 1912, in merge retval=portage.doebuild(y,"merge",myroot,self.pkgsettings,edebug) File "/usr/lib/portage/pym/portage.py", line 2724, in doebuild return merge(mysettings["CATEGORY"],mysettings["PF"],mysettings["D"],mysettings["BUILDDIR"]+"/build-info",myroot,mysettings,myebuild=mysettings["EBUILD"]) File "/usr/lib/portage/pym/portage.py", line 2896, in merge return mylink.merge(pkgloc,infloc,myroot,myebuild) File "/usr/lib/portage/pym/portage.py", line 6893, in merge return self.treewalk(mergeroot,myroot,inforoot,myebuild,cleanup=cleanup) File "/usr/lib/portage/pym/portage.py", line 6502, in treewalk if self.mergeme(srcroot,destroot,outfile,secondhand,"",cfgfiledict,mymtime): File "/usr/lib/portage/pym/portage.py", line 6758, in mergeme if self.mergeme(srcroot,destroot,outfile,secondhand,offset+x+"/",cfgfiledict,thismtime): File "/usr/lib/portage/pym/portage.py", line 6758, in mergeme if self.mergeme(srcroot,destroot,outfile,secondhand,offset+x+"/",cfgfiledict,thismtime): File "/usr/lib/portage/pym/portage.py", line 6685, in mergeme mydest = new_protect_filename(myrealdest, newmd5=portage_checksum.perform_md5(myabsto)) File "/usr/lib/portage/pym/portage.py", line 707, in new_protect_filename if portage_checksum.perform_md5(real_dirname+"/"+last_pfile) == newmd5: File "/usr/lib/portage/pym/portage_checksum.py", line 25, in perform_md5 return perform_checksum(x, md5hash, calc_prelink)[0] File "/usr/lib/portage/pym/portage_checksum.py", line 128, in perform_checksum myhash, mysize = hash_function(myfilename) File "/usr/lib/portage/pym/portage_checksum.py", line 75, in md5hash return fchksum.fmd5t(filename) IOError: [Errno 2] No such file or directory: '/etc/bash_completion.d/._cfg0000_gentoo'
Reproduced it. (In reply to comment #7) > lrwxrwxrwx 1 root root 26 avr 2 23:12 /etc/bash_completion.d -> > /usr/share/bash-completion/ ^^^ I missed this bit. > lrwxrwxrwx 1 root root 38 avr 7 15:58 ._cfg0000_gentoo -> > ../../usr/share/bash-completion/gentoo Mixed with this means that there is a symlink which is pointing to itself.
Did you link /etc/bash_completion.d to /usr/share/bash-completion yourself?
Yes I dit myself the symlink, as I read on the ebuild info app-shells/bash-completion einfo "Additional complete functions can be enabled by symlinking them from" einfo "/usr/share/bash-completion to /etc/bash_completion.d" OK It my fault : I miss understood the instruction. I remove the symlink and app-shells/gentoo-bashcomp emerge fine. Thanks for the time you take to me.
Closing this as CANTFIX because there is no proper solution with the way portage currently merges files. The only way this can really be solved is by looking at everything that needs to be installed and deciding how to (as well as whether it is possible to) install it before proceeding.