Im mering ebuilds for old libs and GTK+ fails. See the attachment for more info Reproducible: Always Steps to Reproduce: 1.emerge @preserved-rebuild Portage 2.2_rc12 (default-linux/amd64/2007.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.24-gentoo-r4 x86_64) ================================================================= System uname: Linux-2.6.24-gentoo-r4-x86_64-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_4400+-with-glibc2.2.5 Timestamp of tree: Mon, 20 Oct 2008 06:07:02 +0000 app-shells/bash: 3.2_p33 dev-java/java-config: 1.3.7, 2.1.6 dev-lang/python: 2.4.4-r13, 2.5.2-r8 dev-python/pycrypto: 2.0.1-r6 dev-util/cmake: 2.6.2 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.3.0-r1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.13, 2.61-r2 sys-devel/automake: 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.26 virtual/os-headers: 2.6.23-r3 ACCEPT_KEYWORDS="amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=k8 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-march=k8 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LDFLAGS="" LINGUAS="it" MAKEOPTS="-j2" 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="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/portage/local/layman/sunrise" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X acl alsa amd64 arts berkdb cdr cli cracklib crypt cups dbus dri dvd fortran gdbm glitz gpm hal iconv iee1394 ipv6 isdnlog java jpeg kde midi mmx mp3 mudflap ncurses nls nptl nptlonly nsplugin opengl openmp pam pcre pdf perl php png pppd python qt3 qt4 readline reflection samba session spl sse sse2 ssl svg tcpd truetype unicode usb xcomposite xorg 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_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_magicnegotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="it" USERLAND="GNU" VIDEO_CARDS="nvidia nv vesa vga" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Created attachment 169282 [details] Error message
File "/usr/lib64/portage/pym/portage/__init__.py", line 5975, in merge mydbapi=mydbapi, prev_mtimes=prev_mtimes) File "/usr/lib64/portage/pym/portage/dbapi/vartree.py", line 3541, in merge mydbapi=mydbapi, prev_mtimes=prev_mtimes) File "/usr/lib64/portage/pym/portage/dbapi/vartree.py", line 3549, in _merge cleanup=cleanup, mydbapi=mydbapi, prev_mtimes=prev_mtimes) File "/usr/lib64/portage/pym/portage/dbapi/vartree.py", line 3085, in treewalk if self.mergeme(srcroot, destroot, outfile, secondhand, "", cfgfiledict, mymtime): File "/usr/lib64/portage/pym/portage/dbapi/vartree.py", line 3421, in mergeme join(offset, x), cfgfiledict, thismtime): File "/usr/lib64/portage/pym/portage/dbapi/vartree.py", line 3421, in mergeme join(offset, x), cfgfiledict, thismtime): File "/usr/lib64/portage/pym/portage/dbapi/vartree.py", line 3303, in mergeme mydstat = os.lstat(mydest) OSError: [Errno 20] Not a directory: '/etc/gtk-2.0/im-multipress.conf'
This error suggests that /var/tmp/portage/x11-libs/gtk+-2.14.4/image/etc/gtk-2.0/im-multipress.conf might be a directory, which might indicate some sort of filesystem corruption. Is it a directory or not? If it is a directory, does rebuilding x11-libs/gtk+-2.14.4 result in the same error?
(In reply to comment #3) > This error suggests that > /var/tmp/portage/x11-libs/gtk+-2.14.4/image/etc/gtk-2.0/im-multipress.conf > might be a directory, which might indicate some sort of filesystem corruption. > Is it a directory or not? If it is a directory, does rebuilding > x11-libs/gtk+-2.14.4 result in the same error? > It is not a directory but as header file says: Configuration File for the GTK+ Multipress Input Method
There's probably dome sort of problem in the merging of the /etc/gtk-2.0/ directory. Does that directory exist on you system or not? The error seems to suggest that this directory failed to be created.
(In reply to comment #5) > There's probably dome sort of problem in the merging of the /etc/gtk-2.0/ > directory. Does that directory exist on you system or not? The error seems to > suggest that this directory failed to be created. > Its a file not a directory :S Maybe is that the problem?
Yes, it needs to be a directory. Do you know how that file got there? You can solve the problem by removing it. Anyway, portage needs to detect cases like this and handle them more intelligently.
In svn r11920 it's fixed to move broken symlinks out of the way if necessary when merging directories.
This is fixed in 2.2_rc15.