Pode o distcc usar o ccache nos servidores de compilação?

1

Eu sei que ccache pode usar distcc como um empacotador de compilador, mas o oposto também pode ser feito?

Eu tenho um monte de pi framboesa máquinas que usam distcc para cross-compilar seus arm binários em uma máquina x64 com um processador mais rápido e mais rápido I / O.

Como eu frequentemente compilo o mesmo software em todas as framboesas, acho que seria bom se o servidor de compilação pudesse armazenar em cache e reutilizar alguns objetos já compilados com ccache para economizar algum tempo.

Ou será que o tempo de construção principal gasto com as framboesas é mesmo assim?

    
por MattBianco 23.01.2015 / 09:21

1 resposta

1

Sua pergunta não está totalmente clara, mas eu acho que você quer dizer que se o rapsberry pi A construir com o distcc, você quer que o distcc armazene isso no seu servidor, então o raspberry pi B não recompila isso?

Isso pode ser feito agora que o ccache possui suporte ao memcached, portanto, você pode incluir o memcached para armazenar em cache os resultados (verifique a ramificação dev/memcached do ccache). Você também não precisa armazenar isso no mesmo servidor que o distcc. Você poderia armazená-lo na AWS, e seus pi de framboesa só enviariam para distcc quaisquer erros de cache, o que é efetivamente o que você quer

Instale o memcache:

sudo apt-get install memcached

export MEMCACHED_SERVERS=localhost

sudo service memcached restart

E para o ccache (após a atualização para o ramo que eu vinculei)

sudo apt-get install libmemcached-dev

./configure --enable-memcached

make -j4 && sudo make install

Você pode informar ao ccache a localização do seu servidor via:

export CCACHE_MEMCACHED_CONF="--SERVER=localhost"

Veja para mais informações: link

    
por 28.07.2016 / 06:46