1 760
contributi
m (spostata TOC) |
m (copyright) |
||
Riga 54: | Riga 54: | ||
Vi apparir� una schermata molto simile a quella di figura 4-1. | Vi apparir� una schermata molto simile a quella di figura 4-1. | ||
[[Immagine:Menuconfig_1.png| | [[Immagine:Menuconfig_1.png|center|500px|thumb|''Figura 4-1. Schermata iniziale di menuconfig'']] | ||
Le istruzioni per navigare attraverso il programma, e i significati dei diversi caratteri, sono mostrati in cima allo schermo. Il resto dello schermo contiene le diverse opzioni di configurazione. | |||
La configurazione del kernel � divisa in sezioni. Ogni sezione contiene opzioni che corrispondo ad argomenti specifici. Al loro interno possono esserci sottosezioni per vari argomenti specifici. Per esempio tutti i driver per le periferiche possono essere trovati sotto l'opzione del menu principale <tt>Device Drivers ---></tt>. | |||
[[Immagine:Menuconfig_2.png|center|500px|thumb|''Figura 4-2. Selezione dell'opzione Device Drivers'']] | |||
Per aprire questo menu, premete la freccia in basso nove volte, finch� la linea <tt>Device Drivers ---></tt> non � sottolineata, come mostrato in figura 4-2. | Per aprire questo menu, premete la freccia in basso nove volte, finch� la linea <tt>Device Drivers ---></tt> non � sottolineata, come mostrato in figura 4-2. | ||
Premete poi il tasto Invio. Vi porter� nel sotto-menu <tt>Device Drivers</tt> e lo mostrer� come mostrato nella figura 4-3. | Premete poi il tasto Invio. Vi porter� nel sotto-menu <tt>Device Drivers</tt> e lo mostrer� come mostrato nella figura 4-3. | ||
[[Immagine:Menuconfig_3.png| | [[Immagine:Menuconfig_3.png|center|500px|thumb|''Figura 4-3. Sottomenu Device Drivers'']] | ||
Potete continuare a muovervi nella gerarchia dei menu allo stesso modo. Per visualizzare il sotto-menu <tt>Generic Driver Options</tt> premete Invio di nuovo, e vedrete se tre opzioni mostrate in figura 4-4. | Potete continuare a muovervi nella gerarchia dei menu allo stesso modo. Per visualizzare il sotto-menu <tt>Generic Driver Options</tt> premete Invio di nuovo, e vedrete se tre opzioni mostrate in figura 4-4. | ||
[[Immagine:Menuconfig_4.png| | [[Immagine:Menuconfig_4.png|center|500px|thumb|''Figura 4-4. Sottomenu Generic Driver Options'']] | ||
Le prime due opzioni hanno un simbolo <tt>[*]</tt> vicino a esse. Questo significa che quest'opzione � selezionata (perch� il simbolo <tt>*</tt> sta al centro dei due caratteri <tt>[]</tt>), e che questa � un'opzione del tipo s�-o-no. La terza opzione ha un segno <tt>< ></tt>, che mostra che questa opzione pu� essere inserita nel kernel (<tt>Y</tt>), compilata come modulo (<tt>M</tt>), o esclusa del tutto (<tt>N</tt>). | Le prime due opzioni hanno un simbolo <tt>[*]</tt> vicino a esse. Questo significa che quest'opzione � selezionata (perch� il simbolo <tt>*</tt> sta al centro dei due caratteri <tt>[]</tt>), e che questa � un'opzione del tipo s�-o-no. La terza opzione ha un segno <tt>< ></tt>, che mostra che questa opzione pu� essere inserita nel kernel (<tt>Y</tt>), compilata come modulo (<tt>M</tt>), o esclusa del tutto (<tt>N</tt>). | ||
Riga 78: | Riga 78: | ||
Cos�, se desiderate cambiare queste tre opzioni per selezionare solo driver che non necessitano di firmware esterno in tempo di compilazione, disabilitate l'opzione per impedire che il firmware sia compilato, e compilate il caricatore del firmware in spazio utente come modulo, digitando <tt>Y</tt> per la prima opzione, <tt>N</tt> per la seconda e <tt>M</tt> per la terza, rendendo la schermata come quella in figura 4-5. | Cos�, se desiderate cambiare queste tre opzioni per selezionare solo driver che non necessitano di firmware esterno in tempo di compilazione, disabilitate l'opzione per impedire che il firmware sia compilato, e compilate il caricatore del firmware in spazio utente come modulo, digitando <tt>Y</tt> per la prima opzione, <tt>N</tt> per la seconda e <tt>M</tt> per la terza, rendendo la schermata come quella in figura 4-5. | ||
[[Immagine:Menuconfig_5.png| | [[Immagine:Menuconfig_5.png|center|500px|thumb|''Figura 4-5. Sottomenu Generic Driver Options cambiato'']] | ||
Quando avete completato le vostre modifiche in questa schermata, premete il tasto Esc o la freccia destra seguita dal tasto Invio per lasciare questo sottomenu. Tutte le opzioni del kernel possono essere esplorate in questa maniera. | Quando avete completato le vostre modifiche in questa schermata, premete il tasto Esc o la freccia destra seguita dal tasto Invio per lasciare questo sottomenu. Tutte le opzioni del kernel possono essere esplorate in questa maniera. | ||
Quando avete finito di fare tutte le modifiche che desideriate apportare alla configurazione del kernel, uscite dal programma premendo il tasto Esc quando siete nel menu principale. | Quando avete finito di fare tutte le modifiche che desideriate apportare alla configurazione del kernel, uscite dal programma premendo il tasto Esc quando siete nel menu principale. | ||
[[Immagine:Menuconfig_6.png| | |||
[[Immagine:Menuconfig_6.png|center|500px|thumb|''Figura 4-6. Salvare le opzioni del kernel'']] | |||
Vi sar� mostrata la schermata in figura 4-6, che vi chiede se desiderate salvare la vostra modificata configurazione. | Vi sar� mostrata la schermata in figura 4-6, che vi chiede se desiderate salvare la vostra modificata configurazione. | ||
Premete Invio per salvare la configurazione, o, se volete eliminare ogni modifica fatta, digitate la freccia destra per selezionare la voce <tt>< No ></tt> e premete Invio. | Premete Invio per salvare la configurazione, o, se volete eliminare ogni modifica fatta, digitate la freccia destra per selezionare la voce <tt>< No ></tt> e premete Invio. | ||
Riga 94: | Riga 94: | ||
I metodi di configurazione del kernel ''gconfig'' e ''xconfig'' usano un programma grafico per permettervi di modificare la configurazione. I due metodi sono pressoch� identici, l'unica differenza risiedendo nei diversi strumenti grafici attraverso i quali sono scritti. ''gconfig'' � scritto usando il toolkit GTK+ e ha uno schermo diviso in due regioni, come mostrato in figura 4-7. | I metodi di configurazione del kernel ''gconfig'' e ''xconfig'' usano un programma grafico per permettervi di modificare la configurazione. I due metodi sono pressoch� identici, l'unica differenza risiedendo nei diversi strumenti grafici attraverso i quali sono scritti. ''gconfig'' � scritto usando il toolkit GTK+ e ha uno schermo diviso in due regioni, come mostrato in figura 4-7. | ||
[[Immagine:Gconfig_1.png| | [[Immagine:Gconfig_1.png|center|500px|thumb|''Figura 4-7. Schermata di make gconfig'']] | ||
Il metodo ''xconfig'' � scritto usando il toolkit QT e ha uno schermo diviso in tre regioni, come in figura 4-8. | Il metodo ''xconfig'' � scritto usando il toolkit QT e ha uno schermo diviso in tre regioni, come in figura 4-8. | ||
[[Immagine:Xconfig_1.png| | [[Immagine:Xconfig_1.png|center|500px|thumb|''Figura 4-8. Schermata di make xconfig'']] | ||
Usate il mouse per navigare nei sottomenu e selezionare le opzioni. Per esempio, nella figura 4-8 potreste usarlo per selezionare il sottomenu <tt>Generic Driver Options</tt> del menu <tt>Device Drivers</tt>. Questo cambier� la schermata di ''xconfig'' e la far� diventare quella dell'immagine 4-9. | Usate il mouse per navigare nei sottomenu e selezionare le opzioni. Per esempio, nella figura 4-8 potreste usarlo per selezionare il sottomenu <tt>Generic Driver Options</tt> del menu <tt>Device Drivers</tt>. Questo cambier� la schermata di ''xconfig'' e la far� diventare quella dell'immagine 4-9. | ||
[[Immagine:Xconfig_2.png| | [[Immagine:Xconfig_2.png|center|500px|thumb|''Figura 4-9. Generic Driver Options in make xconfig'']] | ||
La corrispondente immagine di ''gconfig'' � in figura 4-10. | La corrispondente immagine di ''gconfig'' � in figura 4-10. | ||
[[Immagine:Gconfig_2.png| | [[Immagine:Gconfig_2.png|center|500px|thumb|''Figura 4-10. Generic Driver Options in make gconfig'']] | ||
Modificare questo sottomenu per disabilitare la seconda opzione e rendere la terza opzione compilata come modulo genera le schermate apparire come nelle figure 4-11 e 4-12. | Modificare questo sottomenu per disabilitare la seconda opzione e rendere la terza opzione compilata come modulo genera le schermate apparire come nelle figure 4-11 e 4-12. | ||
[[Immagine:Xconfig_3.png| | [[Immagine:Xconfig_3.png|center|500px|thumb|''Figura 4-11. Generic Driver Options in make xconfig, modificato'']] | ||
[[Immagine:gconfig_3.png| | [[Immagine:gconfig_3.png|center|500px|thumb|''Figura 4-12. Generic Driver Options in make gconfig, modificato'']] | ||
Notate che nel metodo ''gconfig'' un riquadro con il segno di visto significa che l'opzione sar� compilata nel kernel, laddove una linea nel riquadro significa che l'opzione sar� compilata come modulo. Nel metodo ''xconfig'' un'opzione compilata come modulo sar� mostrata con un punto nel riquadro. | Notate che nel metodo ''gconfig'' un riquadro con il segno di visto significa che l'opzione sar� compilata nel kernel, laddove una linea nel riquadro significa che l'opzione sar� compilata come modulo. Nel metodo ''xconfig'' un'opzione compilata come modulo sar� mostrata con un punto nel riquadro. | ||
Riga 159: | Riga 158: | ||
Il sistema di compilazione del kernel lavora molto bene come operazione che pu� essere divisa in pezzi pi� piccoli e assegnati a diversi processori. Facendo questo, potete usare la piena potenza di una macchina multiprocessore e ridurre considerevolmente il tempo di compilazione del kernel. | Il sistema di compilazione del kernel lavora molto bene come operazione che pu� essere divisa in pezzi pi� piccoli e assegnati a diversi processori. Facendo questo, potete usare la piena potenza di una macchina multiprocessore e ridurre considerevolmente il tempo di compilazione del kernel. | ||
Per compilare un kernel in modo parallelo, usate l'opzione ''-j'' del comando ''make''. � meglio dare un numero all'opzione ''-j'' che | Per compilare un kernel in modo parallelo, usate l'opzione ''-j'' del comando ''make''. � meglio dare un numero all'opzione ''-j'' che corrisponda al doppio del numero di processori nel sistema. Quindi, per macchine con due processori, usate: | ||
<pre>$ make -j4</pre> | <pre>$ make -j4</pre> | ||
e per macchine con quattro processori, usate: | e per macchine con quattro processori, usate: | ||
Riga 184: | Riga 183: | ||
Una caratteristica molto utile � la costruzione di un kernel in una compilazione incrociata, per permettere a una macchina pi� potente di compilare un kernel per una sistema integrato pi� piccolo, o anche solo per controllare una compilazione per un'architettura diversa per assicurare che a un cambiamento nel codice sorgente non rompa qualcosa di inaspettato. Il sistema di compilazione del kernel consente di specificare un'architettura diversa da quella della macchina corrente con il parametro <tt>ARCH=</tt>argomento. Il sistema di compilazione consente, inoltre, di specificare il compilatore che si desidera usare con il parametro <tt>CC=</tt>argomento o uno stumento per concatenare ("toolchain", N.d.T.) la compilazione incrociata con <tt>CROSS_COMPILE</tt> argomento. | Una caratteristica molto utile � la costruzione di un kernel in una compilazione incrociata, per permettere a una macchina pi� potente di compilare un kernel per una sistema integrato pi� piccolo, o anche solo per controllare una compilazione per un'architettura diversa per assicurare che a un cambiamento nel codice sorgente non rompa qualcosa di inaspettato. Il sistema di compilazione del kernel consente di specificare un'architettura diversa da quella della macchina corrente con il parametro <tt>ARCH=</tt>argomento. Il sistema di compilazione consente, inoltre, di specificare il compilatore che si desidera usare con il parametro <tt>CC=</tt>argomento o uno stumento per concatenare ("toolchain", N.d.T.) la compilazione incrociata con <tt>CROSS_COMPILE</tt> argomento. | ||
Per esempio, per avere la configurazione predefinita dell'architettura x86_64, si pu� inserire:<pre>$ make ARCH=x86_64 defconfig</pre> | Per esempio, per avere la configurazione predefinita dell'architettura x86_64, si pu� inserire: | ||
Per compilare l'intero kernel con uno strumento per concatenare la compilazione situato in ''/usr/local/bin'', si pu� inserire:<pre>$ make ARCH=arm CROSS_COMPILE=/usr/local/bin/arm-linux-</pre> | |||
� utile anche per i kernel non ottenuti con compilazione incrociata cambiare ci� il sistema di costruzione del kernel usa per il compilatore. Esempi di questo sono l'utilizzo dei programmi ''distcc'' o ''ccache'', i quali riducono notevolmente il tempo di compilazione di un kernel. Per usare il programma ''ccache'' come parte del sistema di costruzione del kerne, digitate:<pre>$ make CC="ccache gcc"</pre> | <pre>$ make ARCH=x86_64 defconfig</pre> | ||
Per usare entrambi i ''distcc'' e ''ccache'' insieme, inserite:<pre>$ make CC="ccache distcc"</pre> | |||
Per compilare l'intero kernel con uno strumento per concatenare la compilazione situato in ''/usr/local/bin'', si pu� inserire: | |||
<pre>$ make ARCH=arm CROSS_COMPILE=/usr/local/bin/arm-linux-</pre> | |||
� utile anche per i kernel non ottenuti con compilazione incrociata cambiare ci� il sistema di costruzione del kernel usa per il compilatore. Esempi di questo sono l'utilizzo dei programmi ''distcc'' o ''ccache'', i quali riducono notevolmente il tempo di compilazione di un kernel. Per usare il programma ''ccache'' come parte del sistema di costruzione del kerne, digitate: | |||
<pre>$ make CC="ccache gcc"</pre> | |||
Per usare entrambi i ''distcc'' e ''ccache'' insieme, inserite: | |||
<pre>$ make CC="ccache distcc"</pre> | |||
[[Categoria:Kernel]] | [[Categoria:Kernel]] |
contributi