When running revdep-rebuild after doing a depclean (the system had just been updated and --newuse had been run as a flag) I get this error: >>> emerge (3 of 11) gnome-base/libglade-0.17-r6 to / >>> md5 files ;-) libglade-0.17-r6.ebuild >>> md5 files ;-) libglade-2.4.0.ebuild >>> md5 files ;-) libglade-2.4.2.ebuild >>> md5 files ;-) libglade-2.5.0.ebuild >>> md5 files ;-) libglade-2.5.1.ebuild >>> md5 files ;-) files/digest-libglade-2.4.0 >>> md5 files ;-) files/digest-libglade-0.17-r6 >>> md5 files ;-) files/Makefile.in.am-xmlcatalog.patch >>> md5 files ;-) files/Makefile.in.am-2.4.2-xmlcatalog.patch >>> md5 files ;-) files/digest-libglade-2.4.2 >>> md5 files ;-) files/digest-libglade-2.5.0 >>> md5 files ;-) files/digest-libglade-2.5.1 >>> md5 src_uri ;-) libglade-0.17.tar.gz >>> Unpacking source... >>> Unpacking libglade-0.17.tar.gz to /var/tmp/portage/libglade-0.17-r6/work >>> Source unpacked. * Patching ${S}/ltmain.sh ... * Applying portage-1.4.1.patch ... * Applying relink-1.4.1.patch ... * Applying sed-1.4.0.patch ... * Applying test-1.4.1.patch ... * Applying uClibc/libtool patches ... * Fixing ${S}/configure ... [ ok ]configure: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used. checking for a BSD compatible install... /bin/install -c checking whether build environment is sane... yes checking for mawk... no checking for gawk... gawk checking whether make sets ${MAKE}... yes checking whether to enable maintainer-specific portions of Makefiles... no checking for i686-pc-linux-gnu-gcc... i686-pc-linux-gnu-gcc checking for C compiler default output... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for executable suffix... checking for object suffix... o checking whether we are using the GNU C compiler... yes checking whether i686-pc-linux-gnu-gcc accepts -g... yes checking for style of include used by make... GNU checking dependency style of i686-pc-linux-gnu-gcc... gcc3 checking for strerror in -lcposix... no checking how to run the C preprocessor... i686-pc-linux-gnu-gcc -E checking for ANSI C header files... yes checking for unistd.h... yes checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking for ld used by GCC... /usr/i686-pc-linux-gnu/bin/ld checking if the linker (/usr/i686-pc-linux-gnu/bin/ld) is GNU ld... yes checking for /usr/i686-pc-linux-gnu/bin/ld option to reload object files... -r checking for BSD-compatible nm... /usr/bin/i686-pc-linux-gnu-nm -B checking whether ln -s works... yes checking how to recognise dependant libraries... pass_all checking command to parse /usr/bin/i686-pc-linux-gnu-nm -B output... ok checking for dlfcn.h... yes checking for i686-pc-linux-gnu-ranlib... i686-pc-linux-gnu-ranlib checking for i686-pc-linux-gnu-strip... i686-pc-linux-gnu-strip checking for objdir... .libs checking for i686-pc-linux-gnu-gcc option to produce PIC... -fPIC checking if i686-pc-linux-gnu-gcc PIC flag -fPIC works... yes checking if i686-pc-linux-gnu-gcc static flag -static works... yes checking if i686-pc-linux-gnu-gcc supports -c -o file.o... yes checking if i686-pc-linux-gnu-gcc supports -c -o file.lo... yes checking if i686-pc-linux-gnu-gcc supports -fno-rtti -fno-exceptions... yes checking whether the linker (/usr/i686-pc-linux-gnu/bin/ld) supports shared libraries... yes checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking dynamic linker characteristics... GNU/Linux ld.so checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... yes checking whether -lc should be explicitly linked in... no creating libtool checking for gtk-config... /usr/bin/gtk-config checking for GTK - version >= 1.2.0... yes checking for xml-config... no configure: error: Couldn't find xml-config !!! ERROR: gnome-base/libglade-0.17-r6 failed. !!! Function src_compile, Line 42, Exitcode 1 !!! (no error message) ================= I've tried emerging libglade and it works but when I delete the revdep files and redo revdep-rebuild it fails with the same error. ================ emerge info Portage 2.0.51.22-r1 (default-linux/x86/2005.0, gcc-3.3.5-20050130, glibc-2.3.5-r0, 2.6.12-gentoo-r4 i686) ================================================================= System uname: 2.6.12-gentoo-r4 i686 Intel(R) Pentium(R) 4 Mobile CPU 1.70GHz Gentoo Base System version 1.6.12 dev-lang/python: 2.3.5 sys-apps/sandbox: 1.2.10 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.15.92.0.2-r10 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=i686 -fomit-frame-pointer -pipe" 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/lib/mozilla/defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=i686 -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://gentoo.tiscali.nl/gentoo/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 3dnow X adns alsa apm arts avi berkdb bitmap-fonts cdr crypt cups curl dba eds emboss encode esd fam flac foomaticdb fortran freetds gd gdbm gif gnome gpm gstreamer gtk gtk2 imagemagick imlib java jpeg junit kde ldap libg++ libwww mad mikmod motif mozilla mp3 mpeg mysql ncurses nls ogg oggvorbis opengl oss pam pdflib perl php png postgres python qt quicktime readline samba sdl slang spell ssl svga tcltk tcpd tiff truetype truetype-fonts type1-fonts vorbis xine xml2 xmms xv zlib userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTDIR_OVERLAY =================== Any suggestions as to what to do? Reproducible: Always Steps to Reproduce: 1. 2. 3.
I noticed this behaviour too. It seems that emerge --depclean does not support multi-slotted packages. After an emerge --depclean dev-libs/libxml is removed, although libglade-0.17-r6 (current version) has a dependency on this package. The only way to fix this is to add dev-libs/libxml to your world file. To reproduce: 1. emerge --depclean (will remove libxml) 2. revdep-rebuild (will try to recompile libglade-0.17-r6, but fails on missing xml-config) 3. emerge --oneshot dev-libs/libxml 4. revdep-rebuild (will succeed now) 5. emerge --ask --depclean (will want to remove libxml again) Somehow the dependency on libxml in libglade isn't working. emerge --info: Portage 2.0.51.22-r2 (default-linux/x86/2005.0, gcc-3.3.5-20050130, glibc-2.3.5-r0, 2.6.11.11 i686) ================================================================= System uname: 2.6.11.11 i686 AMD Athlon(TM) XP 2000+ Gentoo Base System version 1.6.13 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] ccache version 2.3 [disabled] dev-lang/python: 2.3.5, 2.4.1-r1 sys-apps/sandbox: 1.2.11 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.15.92.0.2-r10 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=athlon-xp -O3 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=athlon-xp -O3 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distcc distlocks fixpackages sandbox sfperms strict userpriv usersandbox" GENTOO_MIRRORS="ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo http://www.mirror.ac.uk/sites/www.ibiblio.org/gentoo/ ftp://ftp.rhnet.is/pub/gentoo/ ftp://ftp.uninett.no/pub/linux/Gentoo ftp://trumpetti.atm.tut.fi/gentoo/ ftp://gentoo.inode.at/source/" MAKEOPTS="-j4" PKGDIR="/usr/local/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage-overlays/custom-ebuilds /usr/local/portage-overlays/lila-theme" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 3dnow X aac acpi alsa avi berkdb bitmap-fonts cdr crypt cups curl dga dvd eds emboss encode esd exif fam flac foomaticdb fortran gdbm gif gnome gpm gstreamer gtk gtk2 hal howl imagemagick imlib ipv6 java jpeg junit libg++ libwww mad mikmod mmx motif mozilla mp3 mpeg mysql ncurses nls ogg oggvorbis opengl pam pdflib perl png ppds python quicktime readline samba scanner sdl slang spell sse ssl svg svga tcltk tcpd tiff truetype truetype-fonts type1-fonts unicode usb vorbis xml xml2 xosd xv zlib video_cards_matrox userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
I'm wondering why libxml has a SLOT since the other package has a different name (libxml2). But indeed, the behavior is not what is expected of it.
Well, revdep-rebuild uses --nodeps; if you remove that, it (revdep-rebuild) should work. But --depclean should never have removed it in the first place.
I have similar problems with: [ebuild N ] dev-util/indent-2.2.9-r2 [ebuild N ] dev-libs/libxml-1.8.17-r2 [ebuild N ] gnome-base/oaf-0.6.10 [ebuild N ] gnome-base/gnome-libs-1.4.2 [ebuild N ] gnome-base/gnome-common-2.8.0 [ebuild N ] media-libs/gdk-pixbuf-0.22.0-r3 All of them are dependencies of a world-listed package (or dependency of such a package) yet are all triggered for removal by --depclean.
Maybe this bug should get a higher priority? I am using Gentoo since two years now and as far as I remember this problem has always been there with some packages.
Just forgot... only concerning the libglade-0.17-r6 thing: Maybe you want to execute a emerge --unmerge libglade-0.17-r6 and then run a revdep-rebuild It is possible that you do not need libglade-0.17 any more and it is only left on the system by emerge --depclean because also libglade is a slot installation.
The fix for revdep-rebuild is in gentoolkit-0.2.1_pre*
Fix is in gentoolkit-0.2.1