Disclaimer :
Questo manuale è stato sostituito da una nuova versione e non è più
mantenuto.
|
[ << ]
[ < ]
[ Home ]
[ > ]
[ >> ]
5. Copia dei file di installazione di Gentoo
Indice:
5.a. Installazione di uno stage
Impostare la data e l'ora
Prima di continuare è necessario controllare la data e l'ora ed aggiornarle. Un
orologio impostato male può portare problemi in futuro.
Per visualizzare l'ora e la data attuali eseguire date:
Codice 1.1: Verificare la data e l'ora |
# date
Fri Mar 29 16:21:18 UTC 2005
|
Se la data o l'ora fossero errate, è possibile aggiornarle utilizzando il
comando date MMDDhhmmCCYY ( dove M è il mese, D è il
giorno, h l'ora, m il minuto, C il secolo e Y
l'anno). A questo punto è consigliabile impostare l'ora UTC, è possibile poi
regolare il fuso orario in seguito. Ad esempio per impostare la data al 29 marzo
2005 e l'ora alle 16:21:
Codice 1.2: Impostare data e ora in UTC |
# date 032916212005
|
5.b. Predefinito: Usare uno stage3 dal CD di Installazione
Estrazione dello stage
Gli stage sul CD risiedono nella directory /mnt/cdrom/stages. Per
vedere un elenco degli stage disponibili, usare ls:
Codice 2.1: Elenco di tutti gli stage disponibili |
# ls /mnt/cdrom/stages
|
Se il sistema risponde con un errore, si dovrebbe montare il CD-ROM prima:
Codice 2.2: Montare il CD-ROM |
# ls /mnt/cdrom/stages
ls: /mnt/cdrom/stages: No such file or directory
# mount /dev/cdroms/cdrom0 /mnt/cdrom
# ls /mnt/cdrom/stages
|
Andare ora sul punto di montaggio di Gentoo (di solito
/mnt/gentoo):
Codice 2.3: Cambiamento della directory a /mnt/gentoo |
# cd /mnt/gentoo
|
Estrarre ora lo stage scelto. E' possibile farlo con lo strumento tar.
Assicurarsi di usare le stesse opzioni (-xvjpf)! La x significa di
Estrarre, v di Visualizzare le operazioni ed è opzionale,
j di Decomprimere con bzip2, p di Preservare i
permessi dei file, f di Estrarre da file e non da input. Nel
prossimo esempio, si estrae lo stage stage3-ppc64-32ul-2008.0.tar.bz2.
Assicurarsi ancora di sostituire il nome del file del tarball con quello scelto.
Codice 2.4: Estrarre lo stage |
# tar xvjpf /mnt/cdrom/stages/stage3-ppc64-32ul-2008.0.tar.bz2
|
Ora si è pronti per procedere con la prossima sezione riguardante come Installare Portage.
5.c. Installazione di Portage
Estrarre lo snapshot di Portage
Ora è necessario procedere all'installazione dello snapshot di Portage: si
tratta di un archivio
che contiene tutti i software che è possibile installare con le relative
informazioni.
Estrarre lo snapshot dal CD di Installazione
Per installare lo snapshot, guardare in /mnt/cdrom/snapshots/ per
vedere quale snapshot è disponibile:
Codice 3.1: Controllare /mnt/cdrom/snapshot |
# ls /mnt/cdrom/snapshots
|
Estrarre lo snapshot con il seguente comando. Assicurarsi di usare le stesse
opzioni con tar. La -C è maiuscola. Nel prossimo esempio si usa
portage-<data>.tar.bz2 come nome del file dello snapshot.
Sostituire lo snapshot con quello che è sul proprio CD di Installazione.
Codice 3.2: Estrazione dello snapshot di Portage |
# tar -xvjf /mnt/cdrom/snapshots/portage-<data>.tar.bz2 -C /mnt/gentoo/usr
|
Copiare gli archivi di codice sorgente
Si deve copiare tutto il codice sorgente dal CD di Installazione Universale.
Codice 3.3: Copiare il codice sorgente |
# mkdir /mnt/gentoo/usr/portage/distfiles
# cp /mnt/cdrom/distfiles/* /mnt/gentoo/usr/portage/distfiles/
|
5.d. Configurare le opzioni di compilazione
Introduzione
Per ottimizzare Gentoo, si possono impostare alcune variabili che hanno effetto
sul comportamento di Portage. Tutte queste variabili possono essere impostate
come variabili di ambiente (usando export), ma non in modo permanente.
Per mantenere le impostazioni, Portage fornisce il file di configurazione
/etc/make.conf. E' il file da modificare adesso.
Nota:
Un elenco commentato di tutte le variabili possibili si trova in
/mnt/gentoo/etc/make.conf.example. Ma per una installazione di
Gentoo è soltanto necessario impostare le variabili che sono menzionate sotto.
|
Si prenda il proprio editor preferito (in questa guida si usa nano) per
poter cambiare le variabili di ottimizzazione che di cui si sta trattando.
Codice 4.1: Aprire /etc/make.conf |
# nano -w /mnt/gentoo/etc/make.conf
|
Come è evidente, il file make.conf.example è strutturato in modo
molto semplice: le righe commentate iniziano con "#", le altre righe definiscono
le variabili, usando la sintassi VARIABILE="valore". Molte di queste
variabili vengono trattate in seguito.
Avvertenza:
Non fare nessuna modifica alla variabile USE se si sta facendo una installazione
con stage3 con GRP. Si può cambiare la variabile USE dopo aver installato il
pacchetto che si desidera.
|
CHOST
La variabile CHOST imposta il tipo di compilazione da effettuare.
Dovrebbe già essere impostata al valore corretto. Non modificarla
perché potrebbe causare seri malfunzionamenti. Se la variabile
CHOST non sembra essere quella corretta è probabile che sia stato scelto
lo stage sbagliato.
CFLAGS e CXXFLAGS
Le variabili CFLAGS e CXXFLAGS definiscono le opzioni di
ottimizzazione per i compilatori C e C++ rispettivamente di gcc. Anche
se qui vengono definite in generale, le massime performance si ottengono quando
si impostano le variabili per ogni programma separatamente perché ogni programma
è differente.
In make.conf si dovrebbero definire le impostazioni di
ottimizzazione che si ritiene possano rendere il sistema più reattivo in
generale. Non mettere impostazioni sperimentali in questa variabile; troppa
ottimizzazione può far funzionare male i programmi (crash, o peggio ancora,
malfunzionamento).
Non vengono spiegate tutte le possibili opzioni di ottimizzazione. Chi volesse
conoscerle, legga il Manuale Online
GNU o la pagina di informazioni gcc (info gcc -- funziona
solo su un sistema Linux). Per le più comuni impostazioni di ottimizzazione, lo
stesso file make.conf.example contiene molti esempi e informazioni
da consultare.
Una delle impostazioni sono le flag -march= o -mcpu= che
specificano il nome dell'architettura per cui compilare. Le opzioni disponibile
sono descritte nel file make.conf.example come commenti.
Una seconda impostazione è la flag -O (o maiuscola, non zero), che
specifica la classe di ottimizzazione di gcc. Possibili classi sono
s (per ottimizzazioni sulla dimensione), O (per nessuna
ottimizzazione), 1, 2 o perfino 3 per ulteriori
ottimizzazioni sulla velocità (ogni classe ha le stesse flag di quella
precedente, più alcune aggiuntive). -O2 è quanto viene raccomandato come
impostazione predefinita. È risaputo che l'ottimizzazione -O3 causa gravi
problemi se usata a livello globale nel sistema, pertanto si consiglia vivamente
di rimanere fermi all'ottimizzazione -O2.
Altre flag di ottimizzazione molto usate sono -pipe (si usa pipe
piuttosto che i file temporanei, per la comunicazione tra i vari stage di
compilazione). Non ha impatto sul codice generato.
L'utilizzo di -fomit-frame-pointer (che non tiene il puntatore al frame
per funzioni che non ne hanno bisogno) potrebbe avere serie ripercussioni nel
caso sia necessario effettuare il debug dell'applicazione.
Quando si definiscono CFLAGS e CXXFLAGS, si dovrebbero mettere
insieme molte flag di ottimizzazione. I valori di default contenuti nello
stage3 sono già sufficienti. L'esempio che segue è puramente esplicativo:
Codice 4.2: Definizione delle variabili CFLAGS e CXXFLAGS |
CFLAGS="-O2 -pipe"
CXXFLAGS="${CFLAGS}"
|
Nota:
Si consiglia inoltre di leggere la Guida all'Ottimizzazione della
Compilazione per ulteriori informazioni su come le varie opzioni di
compilazione possono influenzare il proprio sistema.
|
MAKEOPTS
Con MAKEOPTS si definisce quante compilazioni parallele sono possibili
quando si installa un pacchetto. Il numero suggerito è il numero di CPU più uno,
ma non è detto che sia l'impostazione migliore.
Codice 4.3: MAKEOPTS per un normale sistema con 1-CPU |
MAKEOPTS="-j2"
|
Pronti
Aggiornare /mnt/gentoo/etc/make.conf in base alle proprie
preferenze, e salvarlo. Si è ora pronti per continuare con l'Effettuare il chroot in un sistema base Gentoo.
[ << ]
[ < ]
[ Home ]
[ > ]
[ >> ]
I contenuti di questo documento sono rilasciati sotto la licenza Creative
Commons - Attribution / Share Alike.
|