OO failed to emerge without ccache installed. I did not set FEATURES="ccache" in my make.conf. Therefore it should not require it or ccache should be added to the dependencies. To compile OO I emerge ccache and uncommented CCACHE_SIZE="2G" in make.conf; the FEATURES var is still inactive! Thus it works. Reproducible: Always Steps to Reproduce: 1. emerge openoffice-1.1.0 Actual Results: ./configure fails with message "/usr/bin/ccache is a directory" Expected Results: compile OO without ccache installed Portage 2.0.49-r3 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1, 2.4.22-openmosix) ================================================================= System uname: 2.4.22-openmosix i686 AMD Athlon(tm) XP 2000+ distcc 2.9 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.2 [enabled] ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-mcpu=athlon -O2 -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-mcpu=athlon -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs" GENTOO_MIRRORS="ftp://ftp.students-fhtw.de/pub/linux/gentoo ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo 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="" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="foomaticdb mad tetex guile perl esd mozilla x86 oss 3dnow apm arts berkdb cdr crypt cups encode gdbm gif gpm gtk imlib java jpeg kde gnome libg++ libwww mikmod mmx motif mpeg ncurses nls oggvorbis opengl pam pdflib png python qt quicktime readline sdl slang spell ssl gd svga tcpd truetype X xml2 xmms xv zlib matrox dga imap xinerama avi mozsvg mozcalendar mozxmlterm moznoirc moznocompose mozp3p tiff tcltk"
how should any package require ccache? it's simply a compiler cache to reuse already compiled, unchaged code.
I know. It does not depend on it but the ebuild checks for ccache -- in my opion -- activates support for it on its own. It sound strange but that is what happened to me.
Hmm. ccache is in the default features, so if you don't override the features it will be in. I'll make the ccache check somewhat smarter.
There was an error in the code that should work with both ccache versions. The newer version did automatically override the old one as a directory is also "executable". This is now fixed. If you don't want to use ccache, either disable it or unmerge the package. But it should build now (well after the change syncs up)
wrangler ...
*** This bug has been marked as a duplicate of 30636 ***
How should any package require ccache ? A quick answer is: see bug 74853 and think. A longer: when your portage emerges gcc-3.4.3-r1, it forgets to update gcc-config, so the compiler breaks. But when you have ccache (and compiled OO under it previously), ccache pulls the already compiled code out of the cache, bypassing the broken compiler. This lets the configure to pass through the C compiler test and (when the OO is fetched in the cache), build the package successfully even with a totally broken compiler. When you kick the ccache off the field, the compiler shows its broken face and refuses to build the package anymore and you end up thinking about ccache as being a dependency of the package. Especially when you then remerge ccache back and the package suddenly builds successfully again. This strange behavior you may see even when you try to emerge newer version of OO - it is possible that the C source code of this newer version is the same as the one in the older version and changes appear only in JAVA sources or similar areas.
> ./configure fails with message "/usr/bin/ccache is a directory" When I was looking around my gentoo system, I found a /usr/bin/ccache directory full of broken symlinks to various compiler tools. Thus I think that this strange message was caused so that you emerged ccache, it was installed and portage used it but later when you unmerged it, the portage searched for the compiler (gcc) and found /???/gcc which was a symlink pointing to /usr/bin/ccache and that happened to be a directory since ccache moved to /usr/bin/ccache/ccache. When ccache is remerged back, everything works, because portage patches PATH so that the correct ccache binary is used when compiling.
/usr/bin/ccache should with any recent version of ccache be a binary. The symlinks exist in /usr/lib/ccache/bin. If this is not the case, try upgrading ccache. If you allready upgraded, first remove this /usr/bin/ccache directory and then merge ccache again.