Summary: | ccache: failed to create /var/tmp/portage/.ccache (Permission denied) | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Joerg Schaible <joerg.schaible> |
Component: | Unclassified | Assignee: | Portage team <dev-portage> |
Status: | UNCONFIRMED --- | ||
Severity: | normal | CC: | da_risk, mgorny |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Joerg Schaible
2013-10-29 21:57:08 UTC
Please attach the entire config.log in the build directory to this bug report. *** Bug 489824 has been marked as a duplicate of this bug. *** OK, config.log explains it: ======================= %< ====================== # cat /var/tmp/portage/portage/sys-fs/fuse-exfat-1.0.1/work/fuse-exfat-1.0.1/config.log file /var/tmp/portage/portage/sys-fs/fuse-exfat-1.0.1/work/fuse-exfat-1.0.1/SConstruct,line 35: Configure(confdir = .sconf_temp) scons: Configure: Checking whether the C compiler works .sconf_temp/conftest_0.c <- | |int main() |{ | return 0; |} | x86_64-pc-linux-gnu-gcc -o .sconf_temp/conftest_0.o -c -march=native -mtune=native -Os -pipe -ggdb -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -Ilibexfat .sconf_temp/conftest_0.c ccache: failed to create /var/tmp/portage/.ccache (Permission denied) scons: Configure: no ======================= %< ====================== # ls -al /var/tmp/portage/ total 8 drwxr-xr-x 5 root root 47 Oct 29 18:24 . drwxrwxrwt 7 root root 4096 Oct 28 22:31 .. drwxrwxr-x 2 portage portage 6 Jul 5 2011 binpkgs drwxrwsr-x 19 root portage 4096 Jun 5 2012 ccache drwxrwxr-x 6 portage portage 69 Oct 30 18:08 portage ======================= %< ====================== Why does it try to create ".ccache" there? From make.conf: ======================= %< ====================== CCACHE_SIZE="8G" CCACHE_DIR="${PORTAGE_TMPDIR}/ccache" CCACHE_UNIFY="yes" ======================= %< ====================== I doubt that is is a problem of ccache. It looks more than a problem of an ebuild using scons that does not respect the proper environment settings. Otherwise I could not install any C/C++ based ebuild. scons likes to scrub the env of all things it doesn't know about. it's a "feature" that often messes everything up. not sure there's much portage can do about it. more likely we'd have scons-utils.eclass handle it somehow. Sure, if someone finds out a good way of doing so. I see something in violetina's overlay [1] but it requires changing SConstruct file which is nowhere close to a good idea. Basically, scons is mostly do-it-yourself kit [2] with special care to make sure you do it wrong. In other words, I have no good ideas. [1]:https://github.com/violetina/violetina-overlay/blob/master/eclass/scons-ccache.eclass [2]:http://www.scons.org/wiki/ImportingEnvironmentSettings I have the same issue while building libpng so this is not a problem with the build system. I tried to change the owner of /var/tmp/portage/.ccache (chown -R portage) but the owners of the file is reset during emerge. -rw------- 1 root portage 15 Nov 25 10:28 /var/tmp/portage/.ccacche/ccache.conf (In reply to Frédéric Barthelery from comment #7) > I have the same issue while building libpng so this is not a problem with > the build system. I tried to change the owner of /var/tmp/portage/.ccache > (chown -R portage) but the owners of the file is reset during emerge. > -rw------- 1 root portage 15 Nov 25 10:28 > /var/tmp/portage/.ccacche/ccache.conf That looks like the 'ccache -M' thing mentioned in bug 529998, comment #9. I can confirm that downgrading to dev-util/ccache-3.1.10-r1 fix the issue Workaround: Remove CCACHE_SIZE from make.conf and chmod g+rw /var/tmp/ccache/ccache.conf |