[d-kernel] Re: ccache

Alexey Tourbin at at altlinux.ru
Fri Dec 19 21:31:57 MSK 2003


On Fri, Dec 19, 2003 at 07:54:01PM +0200, Serge V Kompan wrote:
>>>  Все вроде выводит как у Вас:
>>>  Что делать дальше необходимо?
>>>
>>> [root at piper alternatives]# realpath /usr/bin/gcc
>>> /usr/bin/gcc_wrapper
>>> [root at piper alternatives]# GCC_USE_CCACHE= strace -e trace=execve gcc
>>> execve("/usr/bin/gcc", ["gcc"], [/* 35 vars */]) = 0
>>> execve("/usr/bin/i586-alt-linux-gcc", ["i586-alt-linux-gcc"], [/* 35 vars */]) = 0
>>> i586-alt-linux-gcc: no input files
>>> [root at piper alternatives]# GCC_USE_CCACHE=1 strace -e trace=execve gcc
>>> execve("/usr/bin/gcc", ["gcc"], [/* 35 vars */]) = 0
>>> execve("/usr/bin/ccache", ["i586-alt-linux-gcc"], [/* 35 vars */]) = 0
>>> execve("/usr/bin/i586-alt-linux-gcc", ["/usr/bin/i586-alt-linux-gcc"], [/* 35 va rs */]) = 0
>>> i586-alt-linux-gcc: no input files
> AT> Теперь ccache должен работать. :)  Это видно из второй команды: если
> AT> переменная окружения GCC_USE_CCACHE выставлена, то между запуском
> AT> /usr/bin/gcc ("обёртки") и /usr/bin/i586-alt-linux-gcc (настоящего
> AT> компилятора) "вклинивается" ccache.
> [robin at piper robin]$ export |grep CC
> declare -x CC="gcc"
> declare -x GCC_USE_CCACHE="1"
> Запускаю компиляцию ядра и во время компиляции проверяю
> [robin at piper robin]$ ccache -s
> cache hit                              0
> cache miss                             0
> called for link                        5
> files in cache                         0
> cache size                             0 Kbytes
> max cache size                     500.0 Mbytes
> 
> Что то не видно что ccache работает

Чудеса вы рассказываете.
Короче, если в strace gcc видно ccache и если при сборке используется
именно gcc (а не gcc-2.96 или i586-alt-linux-gcc напрямую), то этого просто не может
быть.

Кажется, там при сборке ядра используется gcc-2.96 напрямую.
Это зашито в /etc/rpm/macros.d/kernel.

По-моему, должно вот так сработать:
GCC_VERSION=2.96 GCC_USE_CCACHE=1 rpm -ba --define 'kgcc gcc' ~/RPM/SPECS/kernel-std-up.spec

2devel-kernel: как правильно собирать ядро и использовать при этом ccache?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : /pipermail/devel-kernel/attachments/20031219/291cd944/attachment.bin


More information about the devel-kernel mailing list