> > I'm emergin system and world after a little while, maybe 4 months, I got > directory does not exist /usr/lib/ccache/bin > > I search a bit, and it seems that ccache accelerate compiling. > So it's seems to emerge anyway in a good way. > What should I do to kinda make it better ? Just create that folder?? >
The short answer is to edit make.conf and create a new directory. For example, here is a copy from my make.conf of the relevant location (sorry for the line numbers): FEATURES="collision-protect sandbox ccache userpriv usersandbox buildpkg" # features for the cowboy in you #FEATURES="-collision-protect -protect-owned sandbox ccache" CCACHE_DIR="/var/tmp/ccache/" CCACHE_SIZE="2G" You need to add the FEATURE ccache (don't worry about the rest of mine, but you should have some FEATURES I hope!), define the CCACHE_DIR & CCACHE_SIZE variables, and make sure the CCACHE_DIR is created. For more information, you can check the gentoo wiki: http://en.gentoo-wiki.com/wiki/Ccache Personally, right above the FEATURES declaration in make.conf, I have a stack of comments so I can remember what features are available and remember how to use them: # Notes of all possible FEATURES and the respective effects # 'assume-digests' # when commiting work to cvs with repoman(1), assume that all # existing SRC_URI digests are correct. This feature also # affects digest generation via ebuild(1) and emerge(1) (emerge # generates digests only when the 'digest' feature is enabled). # 'autoaddcvs' causes portage to automatically try to add files to cvs # that will have to be added later. Done at generation times # and only has an effect when 'cvs' is also set. # 'buildpkg' causes binary packages to be created of all packages that # are being merged. # 'ccache' enables ccache support via CC. # 'confcache' enable confcache support; speeds up autotool based configure # calls # 'collision-protect' # prevents packages from overwriting files that are owned by # another package or by no package at all. # 'cvs' causes portage to enable all cvs features (commits, adds), # and to apply all USE flags in SRC_URI for digests -- for # developers only. # 'digest' autogenerate digests for packages when running the emerge(1) # command. If the 'assume-digests' feature is also enabled then # existing SRC_URI digests will be reused whenever they are # available. # 'distcc' enables distcc support via CC. # 'distlocks' enables distfiles locking using fcntl or hardlinks. This # is enabled by default. Tools exist to help clean the locks # after crashes: /usr/lib/portage/bin/clean_locks. # 'fixpackages' allows portage to fix binary packages that are stored in # PKGDIR. This can consume a lot of time. 'fixpackages' is # also a script that can be run at any given time to force # the same actions. # 'gpg' enables basic verification of Manifest files using gpg. # This features is UNDER DEVELOPMENT and reacts to features # of strict and severe. Heavy use of gpg sigs is coming. # 'keeptemp' prevents the clean phase from deleting the temp files ($T) # from a merge. # 'keepwork' prevents the clean phase from deleting the WORKDIR. # 'test' causes ebuilds to perform testing phases if they are capable # of it. Some packages support this automaticaly via makefiles. # 'metadata-transfer' # automatically perform a metadata transfer when `emerge --sync` # is run. # 'noauto' causes ebuild to perform only the action requested and # not any other required actions like clean or unpack -- for # debugging purposes only. # 'noclean' prevents portage from removing the source and temporary files # after a merge -- for debugging purposes only. # 'nostrip' prevents the stripping of binaries. # 'notitles' disables xterm titlebar updates (which contain status info). # 'parallel-fetch' # do fetching in parallel to compilation # 'sandbox' enables sandboxing when running emerge and ebuild. # 'strict' causes portage to react strongly to conditions that are # potentially dangerous, like missing/incorrect Manifest files. # 'userfetch' when portage is run as root, drop privileges to # portage:portage during the fetching of package sources. # 'userpriv' allows portage to drop root privileges while it is compiling, # as a security measure. As a side effect this can remove # sandbox access violations for users. # 'usersandbox' enables sandboxing while portage is running under userpriv. Regards, daid