Salut
Comme je l’ai dit dans mon fil Pause Café je me suis fait une petite grappe de compile avec distcc.
Je dispose de 3 machines identiques avec un CPU AMD Athlon™ 64 X2 Dual Core Processor 6000+. Pour le moment j’ai mis une Lenny i386 (c’est mal mais je n’avais pas le choix).
J’ai installé distcc sur les trois.
Sur le chef j’ai appliqué la configuration suivante :
mkdir -p /usr/local/distcc/bin
cd /usr/local/distcc/bin
ln -s /usr/bin/distcc c++
ln -s /usr/bin/distcc cc
ln -s /usr/bin/distcc g++
ln -s /usr/bin/distcc gcc
Et j’ai modifié mon .bashrc pour avoir les variables d’environnement qui vont bien
DISTCC_HOSTS=localhost 192.168.10.12 192.168.10.15
PATH=/usr/local/distcc/bin:/usr/local/bin:/usr/bin:/bin:/usr/games
CONCURRENCY_LEVEL=30
Sur les autres machines je lance distccd par init.d, la config dans /etc/default/distcc est
STARTDISTCC="true"
ALLOWEDNETS="127.0.0.1 192.168.10.20"
LISTENER="192.168.10.15"
NICE="10"
ZEROCONF="false"
Maintenant quand je compile un noyau avec make-kpkg ou que je construit un paquet debian avec dpkg-buildpackage la charge se répartit sur les 3 bécanes.
Si je compile une tarball je fais :
$CC=distcc ./configure
...
make -j 12
Et la charge se répartit aussi.
Par contre sur un projet utilisant Scons (TASpring) je bute. Je me retrouve avec les erreurs suivantes :
distcc[4054] (dcc_get_top_dir) Warning: HOME is not set; can't find distcc directory
distcc[4054] (dcc_get_top_dir) Warning: HOME is not set; can't find distcc directory
distcc[4054] (dcc_zeroconf_add_hosts) CRITICAL! failed to get zeroconf dir.
distcc[4054] (dcc_build_somewhere) Warning: failed to distribute, running locally instead]
distcc[4054] (dcc_get_top_dir) Warning: HOME is not set; can't find distcc directory
distcc[4054] (dcc_lock_one) ERROR: failed to lock
distcc[4054] (dcc_get_top_dir) Warning: HOME is not set; can't find distcc directory
distcc[4054] (dcc_get_top_dir) Warning: HOME is not set; can't find distcc directory
J’ai posé des questions à google mais je n’ai pas encore trouvé de réponse.