Personal tools
You are here: Home Uputstva Gentoo Kompajliranje pomoću distcc-a
stop softwarepatents
ssp.png
ne m$-vom standardu

ooxml.png

Scriptum Libre

bojkot.jpg

sponzori
mikrodigital
eunet.gif
kernel

Poslednja 2.6 verzija  2.6.28

Poslednja 2.4 verzija  2.4.37

Log in


Forgot your password?
open document format

odf-logo.png

prijatelji LUGoNS-a
gnu.gif
gnuzilla-logo.jpg
oootlogo.png
 paludis-extras-icon.png
 linuxzasve.gif
 

Kompajliranje pomoću distcc-a

by Bojan Delić last modified Jul 31, 2007 09:26 AM

Kratko uputstvo za distribuirano kompajliranje koristeći distcc

Distcc je alat koji omogućava kompajliranje na udaljenim računarima u mreži. Sastoji se iz 2 dela, servera (distccd) i klijenta (distcc).


Prvo, da biste koristili distcc svi računari na mreži moraj u da imaju instaliranu istu verziju gcc-a. Na primer, mešanje verzija 3.3.x (gde je x različito) ne bi trebalo da bude problem, ali mešanje gcc-a 3.2 i 3.3 može da uzrokuje probleme za vreme kompajliranja ili izvršavanja programa.


Instalacija

Napomena: Morate instalirati distcc na svaki računar koji će učestvovati u kompajliranju.

Zatim je potrebno da odredite računare na kojima će se kompajliranje izvršavati. Za to se koristi komanda distcc-config. Na nekoliko različitih načina možete to uraditi, a ja ću ovde navesti najjednostavniji način (koji se najčešće i koristi). Za detalje pogledajte dokumentaciju. Adrese zamenite adresama računara u vašoj mreži. Svaki host se razdvaja praznim mestom.

# distcc-config --set-hosts "192.168.0.1"
Posle toga treba definisati kojim računarima je dozvoljeno da koriste resurse. U fajlu /etc/conf.d/distccd pronađite --allow direktivu i dodajte računare kojima želite da dopustite da pristup. Na primer, ta linija može da izgleda ovako:
DISTCCD_OPTS="${DISTCCD_OPTS} --allow 192.168.0.3/24"
Ukoliko želite dodatnu sigurnost možete dodati i --listen opciju (za detalje pogledajte dokumentaciju)

Podešavanje Portage-a

Da biste podesili Portage da koristi distcc prilikom kompajliranja potrebno je da izmenite file /etc/make.conf. U fajl treba da dodate:


# N je broj koji treba da zamenite u zavisnosti od vaše konfiguracije
# praksa je da N bude jednako broju procesora koji kompajliraju + 1
MAKEOPTS="-jN"
FEATURES="distcc"

Podešavanje paludis-a

Ukoliko koristite paludis, treba da izmenite file /etc/paludis/bashrc. U fajl treba da dodate:

# ukoliko nemate folder /var/tmp/paludis/.distcc treba da ga napravite
# njegov vlasnik treba da bude korisnik paludisbuild
export DISTCC_DIR="/var/tmp/paludis/.distcc"
# ovde navodite hostove na kojima ce se izvrsavati kompajliranje
export DISTCC_HOSTS="192.168.0.1"
export PATH="/usr/lib/distcc/bin:${PATH}"

Za kraj

Ostalo je još da pokrenemo distcc demon i da ga eventualno dodamo u default runlevel. Komande koje će to uraditi su:
rc-update add distccd default
/etc/init.d/distccd start

Ako ste sve opisane korake uradili na svim računarima u mreži, bilo koji računar kada nešto bude kompajlirao će deo posla poslati ostalim računarima i time ubrzati proces.

Ukoliko budete nešto ručno kompajlirali i želite da diristite distcc za tako nešto, treba da dodate u neku od skripti koje se pokreću pri startovanju sistema ili pri logovanju koristnika sledeću liniju:
# export PATH="/usr/lib/distcc/bin:${PATH}"

Document Actions