Distcc
Un article de ALW - Another Linux Wiki.
[modifier] Introduction
Distcc est tres pratique voir indispensable sur des systemes comme Gentoo. Distcc permet de faire de la compilation distribuée. C'est a dire que nous allons repartir les taches de compilations sur plusieurs machines afin d'alleger la peine de nos pauvres becanes :-)
[modifier] Prerequis
Pour que Distcc fonctionne bien nous aurons besoin des memes versions de GCC partout. Distcc est capable de faire du crosscompiling (compiler un paquet pour des architectures differentes) mais c'est une utilisation avancée que nous ne verrons pas ici.
[modifier] Installation et configuration
Pour le monitoring on utilisera le USE gtk
emerge -av distcc
Si les machines utilisant distcc sont 10.0.0.1 et 10.0.0.2 La configuration suivante s'applique sur la machine 10.0.0.1
| File: /etc/distcc/hosts |
10.0.0.2 localhost |
On fera l'inverse sur l'autre machine
| File: /etc/make.conf |
|
# pareil que le fichier /etc/distcc/hosts DISTCC_HOSTS="10.0.0.2 localhost" # on indique a make d'utiliser distcc, ici nous utilisons deja ccache donc on le met avant FEATURES="ccache distcc" # ou X est le nombre de processeurs total +1 (on compte les machines distances) MAKEOPTS="-jX" |
Ensuite on s'occupe de lancer le service et de le faire demarrer au boot de la machine:
/etc/init.d/distcc start rc-update add distcc default
Voila c'est fini \o/
On n'oublie pas que pour avoir un gain vraiment reel il faut aussi utiliser Ccache
Voila ce que donne une compilation vue avec distccmon-gui, l'outil de supervision de distcc :-)

