Конфигурирование Ccache....

Недавно набрал на своём компе команду emerge info, и вот что меня смутило: напротив cchache в скобочках стояло disabled. Ccache -s говорит, что в кэше 0 байт и размер 2 Гб. Насколько я понимаю это не совсем правильно, хотя могу ошибаться))) При установке системы делал как написано в хандбуке, т.е перепрописал путь в /etc/00basic. Подскажите в чём ошибка...Благодарю.

Тебя интересует

использование cache для emerge... я так понимаю...

но мне не понятно че менять в 00basic.

насколлько знаю
emerge ccache
и FEATURES="ccache"

для функционирования ccache в emerge достаточно.

что же касается статистики, то по умолчанию ccache показывает кеш юзера. Чтобы посмотреть кеш портеджей надо написать

CCACHE_DIR="/var/tmp/ccache" ccache -s
Кажется так.

Re: Тебя интересует

Dron написал(а):
использование cache для emerge... я так понимаю...

но мне не понятно че менять в 00basic.

Using ccache for non-Portage C Compiling

If you would like to use ccache for non-Portage compilations, add /usr/lib/ccache/bin to the beginning of your PATH variable (before /usr/bin). This can be accomplished by editing /etc/env.d/00basic, which is the first environment file that defines the PATH variable:

Code Listing 9: Editing /etc/env.d/00basic

PATH="/usr/lib/ccache/bin:/opt/bin"

у меня, к примеру такой вывод
plastikman@base ~ $ CCACHE_DIR="/var/tmp/ccache" ccache -s
cache directory /var/tmp/ccache
cache hit 0
cache miss 0
files in cache 0
cache size 0 Kbytes
max cache size 976.6 Mbytes

Не то...

Using ccache for non-Portage C Compiling

ключевое слово non-Portage. поэтому наплевать и забыть... к проблеме это отношения не имеет.

ты FEATURES прописал?

У меня emerge --info говорит что ccache version 2.4 [enabled]

А статистика пуста, потому что ccache disabled.

Re: Не то...

Dron написал(а):
Using ccache for non-Portage C Compiling

ключевое слово non-Portage. поэтому наплевать и забыть... к проблеме это отношения не имеет.

ты FEATURES прописал?

У меня emerge --info говорит что ccache version 2.4 [enabled]

А статистика пуста, потому что ccache disabled.

А куда нужно прописать FEATURES, в make.conf? У меня там прописано только CCACHE_SIZE="2G"

Конечно...

man make.conf поможет тебе решить проблему.

CCACHE_SIZE это конечно хорошо, но он и по умолчанию два гига. :)

Re: Конфигурирование Ccache....

Plastikman написал(а):
Недавно набрал на своём компе команду emerge info, и вот что меня смутило: напротив cchache в скобочках стояло disabled. Ccache -s говорит, что в кэше 0 байт и размер 2 Гб. Насколько я понимаю это не совсем правильно, хотя могу ошибаться))) При установке системы делал как написано в хандбуке, т.е перепрописал путь в /etc/00basic. Подскажите в чём ошибка...Благодарю.

Встречал в инете описание использования ccach. Укзывалось, что при использовании имен компилятора, принятые в Gentoo, ccach не использовался. Поэтому для задействования необходимо в make.conf прописать стандартные имена, т.е. для C - gcc и C++ - g++, более точную информацию можно найти на форуме...

До включенного

До включенного кеша
# time emerge media-libs/libquicktime
real 3m59.760s
user 2m23.373s
sys 0m48.183s

с добавленными в /etc/make.conf строчками
CC=gcc
CXX=g++
FEATURES="ccache"

# emerge --info | grep ccache
ccache version 2.4 [enabled]
dev-util/ccache: 2.4-r7
FEATURES="ccache distlocks metadata-transfer sandbox sfperms strict unmerge-orphans userfetch"

Первый раз
# time emerge media-libs/libquicktime
real 3m54.492s
user 2m27.545s
sys 0m49.123s

# ccache -s
cache directory /root/.ccache
cache hit 0
cache miss 0
files in cache 0
cache size 0 Kbytes
max cache size 2.0 Gbytes

Второй раз
# time emerge media-libs/libquicktime
real 2m31.875s
user 1m5.724s
sys 0m46.707s

# ccache -s
cache directory /root/.ccache
cache hit 0
cache miss 0
files in cache 0
cache size 0 Kbytes
max cache size 2.0 Gbytes

Вроде время изменилось (по крайней мере real), но почему кеш чистый?

Quote: cache directory

Цитата:
cache directory /root/.ccache

Вроде время изменилось (по крайней мере real), но почему кеш чистый?

Читать первый комментарий до просветления.

Во-первых, emerge

Во-первых, emerge ccache
Во-вторых, в make.conf:
FEATURES="ccache"
CCACHE_SIZE="2G"
CCACHE_DIR="/var/tmp/ccache"
CC=gcc
CXX=g++

Тогда кэширование действительно работает.

без CCACHE_SIZE CCACHE_DIR работать будет

WiseLord написал(а):

CCACHE_SIZE="2G"
CCACHE_DIR="/var/tmp/ccache"

Имхо это дублирующие переменные, для перестраховки...
первое решается CCACHE_DIR="/var/tmp/ccache" ccache -M 2g (хотя 2G значение не очевидное), а второе и так /var/tmp/ccache подефолту для portage... можно использовать, чтобы указать другую папку, например у меня "/root/.ccache", чтобы использовал умолчания ccache

к чему это я? кеширование без них будет работать... :)

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".