Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 70374 Details for
Bug 108885
[it] translated distcc.xml
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
distcc.xml
distcc.xml (text/plain), 13.68 KB, created by
Massimo C.
on 2005-10-11 09:31:38 UTC
(
hide
)
Description:
distcc.xml
Filename:
MIME Type:
Creator:
Massimo C.
Created:
2005-10-11 09:31:38 UTC
Size:
13.68 KB
patch
obsolete
><?xml version = '1.0' encoding = 'UTF-8'?> > ><!DOCTYPE guide SYSTEM "/dtd/guide.dtd"> > ><!-- $Header: /var/www/www.gentoo.org/raw_cvs/gentoo/xml/htdocs/doc/it/distcc.xml,v 1.8 2005/07/22 20:28:04 so Exp $ --> > ><guide link="/doc/it/distcc.xml" lang="it" > > ><title>Gentoo Linux e Distcc</title> > ><author title="Autore" > > <mail link="lisa@gentoo.org" >Lisa Seelye</mail> ></author> ><author title="Redazione" > > <mail link="vapier@gentoo.org" >Mike Frysinger</mail> ></author> ><author title="Redazione" > > <mail link="erwin@gentoo.org" >Erwin</mail> ></author> ><author title="Redazione" > > <mail link="swift@gentoo.org" >Sven Vermeulen</mail> ></author> ><author title="Redazione" > > <mail link="pylon@gentoo.org" >Lars Weiler</mail> ></author> ><author title="Revisione" > > <mail link="blubber@gentoo.org" >Tiemo Kieft</mail> ></author> ><author title="Traduzione" > > <mail link="myzelf@omnidea.it" >Gilberto De Faveri</mail> ></author> ><author title="Revisione" > > <mail link="posta@massimo.biz" >Massimo Canali</mail> ></author> > ><abstract> >Guida di riferimento per l'uso di distcc con Gentoo Linux. ></abstract> > ><!-- The content of this document is licensed under the CC-BY-SA license --> ><!-- See http://creativecommons.org/licenses/by-sa/1.0 --> ><license/> > ><version>1.12</version> ><date>2005-07-01</date> > ><chapter> ><title>Introduzione</title> ><section> ><title>Cos'è distcc?</title> ><body> > ><p> >Distcc è un programma ideato per distribuire i task di compilazione in una >rete di host partecipanti. à composto da un server, <c>distccd</c> e da un >programma client, <c>distcc</c>. Distcc può funzionare in modo trasparente con ><uri link="http://ccache.samba.org" >ccache</uri>, Portage e Automake previa >opportuna configurazione. ></p> > ></body> ></section> ><section> ><title>Bootstrap con distcc</title> ><body> > ><p> >Se si prevede di utilizzare distcc per il bootstrap di una installazione Gentoo, >si veda la relativa sezione all'<uri link="#bootstrapping" >Usare Distcc per il >Bootstrap</uri> di questo documento. ></p> ></body> ></section> ></chapter> ><chapter> ><title>Configurazione</title> ><section> ><title>Dipendenze</title> ><body> > ><p> >Per utilizzare distcc è necessario che tutti i computer collegati in rete >abbiano la stessa versione di GCC. à possibile mescolare, ad esempio, versioni >3.3.x (dove x varia), ma non 3.3.x e 3.2.x altrimenti i programmi ><b>potrebbero</b> contenere errori. ></p> > ></body> ></section> ><section> ><title>Installare distcc</title><body> > ><p> >Esistono alcune opzioni di cui è bene parlare prima di cominciare l'installazione >di distcc. ></p> > ><p> >Distcc contiene un monitor grafico per tenere sotto controllo i task che il >tuo computer sta distribuendo per la compilazione. Se usi Gnome, metti 'gnome' >nelle tue USE flags. Se non usi Gnome e vuoi comunque utilizzare il monitor, >metti 'gtk' nelle tue USE flags. ></p> > ><pre caption="Installare distcc" > ># <i>emerge distcc</i> ></pre> > ></body> ></section> ><section> ><title>Configurare Portage per l'utilizzo di distcc</title> ><body> > ><p> >Configurare Portage per usare distcc è molto facile. à necessario seguire questi >semplici passi per ogni computer sul quale desideri utilizzare distcc: ></p> > ><pre caption="Integrare distcc e Portage" > ># <i>emerge distcc</i> ># <i>nano -w /etc/make.conf</i> ><comment>(Imposta N ad un numero adeguato alla tua configurazione)</comment> ><comment>(Un metodo piuttosto comune consiste nell'impostare N al doppio >del numero totale di CPU + 1)</comment> >MAKEOPTS="-jN" ><comment>(Aggiungere distcc a FEATURES)</comment> >FEATURES="distcc" ></pre> > ></body> ></section> ><section> ><title>Specificare gli host da utilizzare</title> ><body> > ><p> >Per impostare la lista degli host puoi usare <c>distcc-config</c>. >Ecco un esempio di alcuni host che potrebbero essere nella tua lista: ></p> > ><pre caption="Esempio di definizione degli host" > >192.168.0.1 192.168.0.2 192.168.0.3 >192.168.0.1/2 192.168.0.2 192.168.0.3/10 >192.168.0.1:4000/2 192.168.0.2/1 192.168.0.3:3632/4 >@192.168.0.1 @192.168.0.2:/usr/bin/distccd 192.168.0.3 ><comment>(Esistono molti altri metodi per impostare gli host. >Si veda il man di distcc per ulteriori informazioni.)</comment> ><comment>Se desideri compilare anche in locale, devi aggiungere 'localhost' >all'elenco degli host. Al contrario, se non lo desideri (che è la scelta più >diffusa), non aggiungere nulla all'elenco. Su macchine poco prestanti la >compilazione in locale può rallentare parecchio il sistema. Ricordati di >controllare le impostazioni per non ridurre le prestazioni.</comment> ></pre> > ><p> >Potrebbe sembrare complicato, ma nella maggior parte dei casi una variante della >riga 1 o 2 sarà  sufficiente.</p> > ><p> >Dato che la maggior parte degli utenti non userà le righe 3 o 4, rimando chi >fosse interessato alla ><uri link="http://distcc.samba.org/man/distcc_1.html" >documentazione di >distcc</uri>. ></p> > ><p> >Ad esempio, per impostare la riga 1 del listato precedente: ></p> > ><pre caption="Comando di esempio per impostare gli host" > ># <i>/usr/bin/distcc-config --set-hosts "192.168.0.1 192.168.0.2 >192.168.0.3"</i> ></pre> > ><p> >Modifica <path>/etc/conf.d/distccd</path> secondo le tue esigenze e assicurati >di impostare la direttiva <c>--allow</c> per usare soltanto gli host stabiliti. >Per maggiore sicurezza dovresti usare anche la direttiva <c>--listen</c> per >passare a distcc gli indirizzi IP da ascoltare (per sistemi multi-homed - >connessi a diverse reti). Per ulteriori informazioni sulla sicurezza in distcc >puoi consultare <uri link="http://distcc.samba.org/security.html" >Distcc >Security Design</uri>. ></p> > ><impo> >à importante usare --allow e --listen. Si consiglia quindi di leggere le pagine >man di distcc o il documento sulla sicurezza appena citato. ></impo> > ><p> >A questo punto devi avviare il demone distcc su tutti i computer della rete: ></p> > ><pre caption="Avvio del demone distcc" > ><comment>(Aggiungere distcc al runlevel di default)</comment> ># <i>rc-update add distccd default</i> ><comment>(Avviare il demone distcc)</comment> ># <i>/etc/init.d/distccd start</i> ></pre> > ></body> ></section> ><section> ><title>Configurare distcc per lavorare con automake</title> ><body> > ><p> >à generalmente più semplice rispetto alla configurazione di Portage. à >necessario >aggiornare la variabile d'ambiente <c>PATH</c> in modo che includa ><path>/usr/lib/distcc/bin</path> prima della locazione di gcc >(<path>/usr/bin</path>). Un avvertimento: se usi ccache devi mettere distcc >dopo ccache: ></p> > ><pre caption="Configurazione del path" > ># <i>export PATH="/usr/lib/ccache/bin:/usr/lib/distcc/bin:${PATH}"</i> ><comment>Puoi aggiungere questa riga a .bashrc, o all'equivalente file di >configurazione della shell che stai usando, per impostare automaticamente >il PATH ogni volta che effettui il log in</comment> ></pre> > ><p> >A questo punto, invece di usare <c>make</c>, dovrai utilizzare ><c>make -jN</c> (dove N è un intero). Il valore di N dipende dalla >rete e dal tipo di computer che stai usando per compilare. Si consiglia di >effettuare dei test sulla configurazione per trovare il numero che >garantisce le prestazioni migliori. ></p> > ></body> ></section> ></chapter> ><chapter> ><title>Cross-Compiling</title> ><section> ><title>Una nota sul cross-compiling</title> ><body> > ><p> >Il cross-compiling è l'utilizzo di un'architettura per compilare programmi >per un'altra architettura. Questo potrebbe voler dire semplicemente utilizzare >un Athlon (i686) per compilare un programma per un K6-2 (i585) oppure utilizzare >una Sparc per compilare un programma per ppc. ></p> > ></body> ></section> ><section> ><title>Introduzione al cross-compiling</title> ><body> > ><p> >Se vuoi provare il cross-compiling puoi riferirti a <uri >link="http://dev.gentoo.org/~vapier/CROSS-COMPILE-HOWTO" >The Cross Compile >HOWTO</uri>; Crossdev è deprecato. ></p> > ></body> ></section> ></chapter> ><chapter id="bootstrapping" > ><title>Usare Distcc per il Bootstrap</title> ><section> ><title>1: Configurare Portage</title> ><body> > ><p> >à necessario effettuare il boot della nuova macchina con un LiveCD di Gentoo >Linux >e seguire la <uri link="/doc/it/handbook/handbook-x86.xml?part=1" >guida >all'installazione</uri> fino al bootstrap. Dopodichè si può continuare a >configurare Portage per usare distcc. ></p> > ><pre caption="Configurazione preliminare" > ># <i>nano -w /etc/make.conf</i> ><comment>(Aggiungere distcc a FEATURES)</comment> >FEATURES="distcc" ><comment>(Modificare MAKEOPTS con -jN, dove N rappresenta il numero dei >processori aumentato di 1)</comment> >MAKEOPTS="-jN" ></pre> > ><pre caption="Impostare il path" > ># <i>export PATH="/usr/lib/ccache/bin:/usr/lib/distcc/bin:${PATH}"</i> ></pre> > ></body> ></section> ><section> ><title>2: Installare distcc</title> ><body> > ><p> >Prima di configurare distcc è necessario aggiungere l'utente 'distcc' a ><path>/etc/passwd</path>: ></p> > ><pre caption="Creare l'utente distcc" > ># <i>echo "distcc:x:240:2:distccd:/dev/null:/bin/false" >> >/etc/passwd</i> ></pre> > ><impo> >à importante notare che <b>non</b> è questo il metodo corretto per aggiungere un >utente. Abbiamo seguito quest'altra via per il semplice motivo che in questa >fase dell'installazione, <c>useradd</c> (da usare normalmente per lo scopo) non >è ancora disponibile. ></impo> > ><p> >à ora possibile installare distcc: ></p> > ><pre caption="Installare distcc" > ># <i>USE='-*' emerge --nodeps sys-devel/distcc</i> ></pre> > ></body> ></section> ><section> ><title>3: Configurare distcc</title> ><body> > ><p> >Per configurare distcc, esegui <c>distcc-config --install</c>. ></p> > ><pre caption="Configurazione finale di distcc" > ><comment>(Sostituire host1, host2, ... con l'IP degli host che partecipano alla >compilazione)</comment> ># <i>/usr/bin/distcc-config --set-hosts "localhost host1 host2 host3 >..."</i> ><comment>Per esempio: <i>/usr/bin/distcc-config --set-hosts "localhost >192.168.0.4 192.168.0.6"</i> ></comment> ></pre> > ><p> >Adesso distcc è configurato per il bootstrap! Segui la guida >ufficiale all'installazione ricordando di ri-emergere distcc dopo >l'<c>emerge system</c>. Ciò serve per assicurarsi che vengano >installate tutte le dipendenze. ></p> > ><note> >Durante il bootstrap e l'<c>emerge system</c> distcc >potrebbe non essere utilizzato. à normale, poichè alcuni ebuilds o >pacchetti non funzionano bene con distcc, quindi lo disabilitano >intenzionalmente. ></note> > ></body> ></section> ></chapter> ><chapter> ><title>Risoluzione dei Problemi</title> ><section> ><title>Mozilla e Xfree</title> ><body> > ><p> >Emergendo alcuni pacchetti, noterai che non vengono distribuiti (e quindi non >vengono compilati in parallelo). Ciò è dovuto al fatto che gli sviluppatori >di Mozilla e Xfree hanno disabilitato la compilazione parallela perchè causa di >problemi. ></p> > ><p> >La compilazione può fallire anche con altri pacchetti per lo stesso identico >motivo. Se ti dovesse capitare, ><uri link="http://bugs.gentoo.org" >segnala un bug</uri>. ></p> > ></body> ></section> ><section> ><title>Usare contemporaneamente host con hardened-gcc e non-hardened-gcc causa problemi</title> ><body> > ><p> >Con un titolo così lungo, ogni ulteriore spiegazione è superflua. Comunque, se >prevedi di usare distcc in una rete in cui alcuni host usano <uri link="http://www.gentoo.org/proj/en/hardened/etdyn-ssp.xml" >PaX/hardened-gcc</uri> >ed altri no, avrai problemi. ></p> > ><p> >Per evitare rischi dovrai organizzare il lavoro in anticipo: dovrai >eseguire <c>hardened-gcc -R</c> sugli host che hanno PaX/hardened-gcc, >oppure dovrai abilitare le protezioni PaX nel tuo kernel e lanciare <c>emerge >hardened-gcc</c>. Sono entrambe soluzioni valide dato che offrono una buona >protezione e sono trasparenti all'utente. ></p> > ></body> ></section> ><section> ><title>Usare versioni differenti di GCC</title> ><body> > ><p> >Se utilizzi versioni diverse di GCC sui tuoi host, avrai sicuramente strani problemi. >Assicurati quindi che tutti gli host usino la stessa versione di GCC. ></p> > ><p> >Le versioni più recenti di Portage usano <c>${CHOST}-gcc</c> invece di ><c>gcc</c>. Significa che potresti avere dei problemi usando macchine >di tipo i686 insieme a macchine di altro tipo (i386, i586). Per aggirare il >problema puoi eseguire <c>export CC='gcc' CXX='c++'</c> oppure puoi aggiungere il >comando a <path>/etc/make.conf</path>. Il risultato non è sicuro perchè si >tratta di una procedura in fase di test: se ottieni esiti positivi, sei pregato >di contattarmi via email, <mail link="lisa@gentoo.org" >Lisa Seelye</mail>. ></p> > ><impo> >Questa procedura ridefinisce il modo in cui agisce Portage e in futuro >potrebbe portare a strani risultati. Seguila soltanto se stai usando >CHOSTs differenti tra loro. ></impo> > ></body> ></section> ></chapter> ><chapter> ><title>Gli Extra di Distcc</title> ><section> ><title>Monitorare distcc</title> ><body> > ><p> >Distcc contiene due monitor. Quello testuale, compilato di default, >si chiama <c>distccmon-text</c>. Usarlo per la prima volta potrebbe essere >un po' complicato, ma in realtà è molto semplice. Se viene lanciato senza >parametri verrà eseguito una sola volta. Altrimenti, se gli viene passato un >numero, verrà aggiornato ogni N secondi, dove N è l'argomento passato. ></p> > ><p> >L'altro monitor viene abilitato se <c>gtk</c> o <c>gnome</c> sono presenti >tra le <c>USE</c> flags. Questo monitor, piuttosto gradevole, è basato su GTK+ >e gira sotto X. Sotto Gentoo è identificato come <c>distccmon-gui</c> >per non generare confusione. Altrove potrebbe essere identificato come ><c>distccmon-gnome</c>. ></p> > ><pre caption="Avvio dei monitor" > ># <i>distccmon-text N</i> ><comment>(oppure)</comment> ># <i>distccmon-gui</i> ><comment>Per monitorare l'utilizzo di distcc da parte di Portage:</comment> ># <i>DISTCC_DIR="/var/tmp/portage/.distcc/" distccmon-text N</i> ><comment>(oppure)</comment> ># <i>DISTCC_DIR="/var/tmp/portage/.distcc/" distccmon-gui</i> ></pre> > ><impo> >Se la tua directory di distcc è altrove, modifica la variabile DISTCC_DIR >in maniera opportuna. ></impo> > ></body> ></section> ></chapter> ></guide>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 108885
: 70374