Gentoo Logo

Domande frequenti su Catalyst (FAQ)

Indice:

1.  Indice

Introduzione

Questa è una lista non esaustiva di Domande Frequenti su Catalyst.

Domande frequenti

2.  Domande frequenti

Come creare un tarball stage2 e stage3 per un tipo di CPU non generico, come pentium4 o g4?

Per prima cosa assicurarsi che l'hardware che si sta usando sia capace di compilare quel tipo di stage. Se si vuole compilare uno stage per pentium4, si avrà bisogno di un sistema Pentium 4 o AMD64/Opteron. Non sarà possibile farlo su un sistema Athlon XP, in quanto questa CPU non supporta le istruzioni SSE2, le quali sono abilitate per gli stage pentium4. Similmente, se si vuole creare uno stage per g4, bisognerà farlo su un sistema PowerPC G4 o G5.

Dopo essersi assicurati che l'hardware è adatto, seguire semplicemente i passi precedenti, prestando attenzione nell'impostare, per la creazione dello stage2, la variabile subarch con una valida architettura non generica (es. pentium4.) Di conseguenza lo stage2 verrà compilato per la sottoarchitettura specificata. Successivamente si userà lo stage2 come stage "seme" di partenza per creare lo stage3. Ovviamente si dovrà impostare la variabile subarch nelle specifiche dello stage3 con lo stesso valore usato nelle specifiche dello stage2.

Voglio creare un gruppo di stage per diverse sottoarchitetture. Come posso farlo?

Per prima cosa si deve compilare uno stage1 generico. Successivamente si deve usare questo stage1 per creare lo stage2 e lo stage3 specializzato per le varie sottoarchitetture. Non occorre ricompilare lo stage1, in quanto tutti gli stage2 e stage3 specializzati possono usare lo stesso stage1 di base.

Posso creare uno stage1 per una CPU di tipo non generico?

Questa è un'idea molto pericolosa, in quanto come utente ci si aspetta che lo stage1 funzioni su ogni tipo di sottoarchitettura. In questo modo è possibile usare lo stage1 su ogni sistema senza problemi. Bisogna assicurarsi di non "inquinare" lo stage1 con codice specifico per CPU non generiche. Usare sempre uno stage2 o stage3 "generico" per compilare un nuovo stage1.

Pensavo che catalyst riuscisse a creare gli stage "da zero". Se catalyst crea gli stage da zero, perché allora necessita di uno "stage di partenza"?

Bella domanda. Ovviamente uno stage2 o uno stage3 dipendono dallo stage precedente per la loro creazione, e ciò è chiaramente esemplificato dal loro nome (es. uno "stage2" implica che prima c'era uno "stage1".). Tuttavia catalyst necessita di uno stage di partenza per compilare uno stage1, e vale la pena capire il perché di questo requisito fondamentale. Quando si crea uno stage1, catalyst usa il seme stage3 per impostare un ambiente in chroot. Dentro ad esso verrà compilato il nuovo stage1 tramite l'impostazione della variabile ROOT a /tmp/stage1root. Questa operazione dice a Portage che i nuovi pacchetti andranno installati non nel filesystem corrente, ma nel filesystem presente in /tmp/stage1root. /tmp/stage1root viene poi compresso in un archivio tar e diventa lo stage1 di destinazione. Ciò significa che quando catalyst crea uno stage1, lo stage1 stesso non eredita nessun binario o libreria dallo stage di partenza. Lo stage "seme" usato in qualche modo ha un impatto sullo stage1 di destinazione, in quanto gli header di Linux nel seme sono usati per compilare le glibc dello stage1, e i compilatori nel seme sono usati per compilare tutti i programmi nello stage1. Lo stage seme viene usato per isolare il processo di creazione dello stage1 dal sistema locale, inoltre, per esempio, permette di creare stage1 x86 su sistemi amd64.

Esiste una guida ufficiale per Catalyst?

Attualmente non ci sono guide ufficiali. Se si è interessati a scriverne uno, si è pregati di aprire un nuovo bug allegando la guida. La mancanza di una guida ufficiale non significa che Catalyst sia completamente non documentato. Quando viene effettuato l'emerge di Catalyst verranno installati degli esempi ben documentati di file delle specifiche per i vari stage in /usr/share/doc/catalyst-$version/examples.

Se si hanno ulteriori quesiti da porre dopo aver letto gli esempi ci si può iscrivere liberamente alla mailing list gentoo-catalyst.

Dove bisogna mettere le flag USE per pacchetto, e le impostazioni di mascheramento?

Catalyst supporta i file di configurazione in /etc/portage. Basta aggiungere la seguente voce nel file delle specifiche, e assicurarsi di usare la stessa impostazione di portage_confdir per lo stage seme:

portage_confdir: /path/to/custom/etc/portage

Ho veramente bisogno di creare il mio stage1 personalizzato o posso usarne uno tra quelli presenti nei mirror Gentoo?

È buona norma creare sempre il proprio stage personalizzato se non si sta usando lo stesso snapshot usato per creare l'ultimo rilascio. Lo stato dell'albero di portage dipende pesantemente da sé stesso. Se si ha uno stage1 di 3 mesi fa, è molto probabile incorrere in problemi con pacchetti bloccanti o altri cambiamenti nell'albero che causeranno problemi nella creazione dello stage o di compatibilità.

Come posso tenere aggiornati i miei pacchetti contenuti nei GRP/stage/LiveCD?

Catalyst usa Portage per tutto il processo di creazione, per cui tutto quello che si deve fare è rigenerare lo snapshot di Portage e ricompilare i GRP/stage/LiveCD. Portage seguirà tutte le normali regole per decidere quali pacchetti aggiornare.

Catalyst usa delle sintassi particolari per le flag USE?

No, la sintassi per le flag USE di Catalyst è la stessa di Portage.

Catalyst supporta la crosscompilazione?

No, al momento non supporta questa funzionalità.



Stampa

Aggiornato il 8 settembre 2010

Oggetto: Domande frequenti relative allo strumento Catalyst.

John P. Davis
Autore

Daniel Robbins
Autore

William Kilian
Contributi

Chris Gianelloni
Revisione

Davide Cendron
Traduzione

Donate to support our development efforts.

Copyright 2001-2014 Gentoo Foundation, Inc. Questions, Comments? Contact us.