# [RISOLTO]gentoo precompilata.

## jos3ph

salve a tutti, sono molto interessato a installare gentoo ma ho qualche domandina...

che differenza passa tra l'installare gentoo partendo dallo stage uno su una macchina che ha come processore un pentium4 (quindi compilando tutto da zero e ottimizzando per quel processore) e invece fare l'installazione dallo stage 3 già precompilato per il pentium4 (disponibile sul ftp di gentoo) ?

come faccio a sapere che impostazioni hanno usato per realizzare lo stage 3 per p4?

inoltre, che differenza c'è fra quella ottimizzata i686 e quella ottimizzata p3?

avrò sicuramente altre domande ma per ora sono grato a chiunque voglia rispondere a queste  :Smile: 

grazie a tutti in anticipo e buona giornata!Last edited by jos3ph on Sun Jul 03, 2005 5:08 pm; edited 1 time in total

----------

## bender86

Non so con che cflags è compilato lo stage3 per pentium4, ma sarà qualcosa del genere: -O2 -march=pentium4 -mcpu=pentium4. Non troppo spinto. Probabilmente dalla ricompilazione non otterrai un sensibile aumento delle prestazioni, quindi ti conviene installare lo stage3, e poi magari impostare ottimizzazioni un po' più spinte e ricompilare il sistema man mano che lo aggiorni.

i686 è, a grandi linee, una classe di processori di cui fanno parte tutti gli x86 dal pentium2 (credo) e compatibili (quindi anche alcuni AMD, VIA, Cyrix...), quindi le ottimizzazioni saranno per questa generica classe.

Invece pentium3 avrà ottimizzazioni specifiche per pentium3 (non so se quindi possa funzionare su altri processori precedenti).

----------

## -YoShi-

Prima di tutto benvenuto!

 *jos3ph wrote:*   

> 
> 
> che differenza passa tra l'installare gentoo partendo dallo stage uno su una macchina che ha come processore un pentium4 (quindi compilando tutto da zero e ottimizzando per quel processore) e invece fare l'installazione dallo stage 3 già precompilato per il pentium4 (disponibile sul ftp di gentoo) ?
> 
> 

 

La prima differenza è nelle CFLAGS

Queste possono essere generiche/soft (pur mantenendo il -march=pentium4) sia + spinte aggiungendo o togliendo opzioni al compilatore (gcc)

E poi altra differenza sta nelle "USE" impostate per compilare i vari programmi. 

 *jos3ph wrote:*   

> 
> 
> inoltre, che differenza c'è fra quella ottimizzata i686 e quella ottimizzata p3?
> 
> avrò sicuramente altre domande ma per ora sono grato a chiunque voglia rispondere a queste 

 

Nn credo ci sia sta grandissima differenza tra -march=i686 e -march=pentium3.. forse il supporto SSE che i686 nn dovrebbe avere..

----------

## otaku

in questa pagina sono elencate tutte le CFLAGS ritenute sicure per ogni architettura  :Smile:  ovviamente spingendosi oltre non si garantisce la compilazione per ogni pacchetto. Secondo me... almeno non si sappia precisamente cosa si sta ottimizando conviene usare queste...

volevo aggiungere che lo stage 3 viene compilato con precise CFLAGS, quindi è consigliabile partire da uno stage 1 nel caso volessi modificare quelle di default (nulla di eccessivamente complesso, basta dare 2 comandi in più rispetto ad un installazione da stage 3 anche se.. il tempo di installazione sale notevolmente  :Razz: ).

----------

## Ic3M4n

inoltre con lo stage1 puoi cercare di limitare il più possibile alcuni parametri come lo spazio su disco. 

nel senso: utilizzando delle "use" ad hoc puoi tralasciare parti anche importanti di un programma che servirebbero esclusivamente per compatibilità con altri programmi o simili, inoltre avrai sicuramente delle dipendenze in meno etc. potresti anche utilizzare la flag -Os al posto di -O2 che stando al manuale ha la caratteristica di limitare lo spazio su disco. 

in ogni caso l'installazione da stage1 secondo me è molto istruttiva, se già sai qualcosa di linux potrebbe essere un buon modo per approfondire.

----------

## jos3ph

giovani, non so come ringraziarvi  :Smile: 

mi avete fornito con precisione tutte le info che volevo  :Smile: 

ho un'altra domanda alla quale, penso, qualcuno storcerà il naso.......

poniamo il caso che installo gentoo su un pentium4, quella già compilata per p4.

ora, se non ho capito male, se io voglio installare un pacchetto (ipotesi: un pacchetto di nome calcolatrice)

devo dare come comando emerge calcolatrice e gentoo pensa a scaricare il sorgente di quel pacchetto, risolvere le eventuali dipendenze,

e poi compila il pacchetto e le sue dipendenze con le ottimizzazioni che io ho impostato a gcc.

fin qua ho capito bene, giusto?

ora, nella sciagurata ipotesi che io voglia installare qualcosa senza perdere tempo a compilarla, non è possibile impostare gentoo

in modo che scarichi i pacchetti già compilati da un ftp dove sono presenti tutti i pacchetti, ma ricompilati per p4? e se non ci sono allora scarica

i sorgenti e li compila?

in pratica, perdonatemi il paragone infelice, ma sarebbe come avere una debian ma ottimizzata per la propria architettura........

è possibile una cosa del genere?

grazie ancora a tutti!!!!

----------

## jos3ph

 *Ic3M4n wrote:*   

> inoltre con lo stage1 puoi cercare di limitare il più possibile alcuni parametri come lo spazio su disco. 
> 
> nel senso: utilizzando delle "use" ad hoc puoi tralasciare parti anche importanti di un programma che servirebbero esclusivamente per compatibilità con altri programmi o simili, inoltre avrai sicuramente delle dipendenze in meno etc. potresti anche utilizzare la flag -Os al posto di -O2 che stando al manuale ha la caratteristica di limitare lo spazio su disco. 
> 
> in ogni caso l'installazione da stage1 secondo me è molto istruttiva, se già sai qualcosa di linux potrebbe essere un buon modo per approfondire.

 

non ho ben capito cosa sono le USE:oops: 

iinoltre, ma le flag per compilare ottimizzando sulla mia architettura, le imposto in un file generale o per ogni pacchetto che scarico le devo impostare a mano?

di linux non ne so tantissimo, so solo che recentemente ho messo in piedi un pc con suse 9.3 per usarlo come firewall, dhcp server, e server mail, convinto del fatto che con suse era tutto semplice, che il manuale era bello e completo, ecc.ecc.

risultato: con il suo bel tool grafico yast non funzionava un caxxo di quello che impostavo, e alla fine mi son dovuto andare a configurare a mano iptables, ho dovuto configurare a manina il dhcp e configurare a manina i file di conf. per il server mail, risultato: andava tutto esattamente come volevo.

la mia opinione su suse è uscita decisamente ridimensionata........

quindi, visto che alla fine mi tocca sempre andare a configurare a manina tramite terminale, tanto vale usare una bella distro ottimizzata come gentoo, o sbaglio?

----------

## -YoShi-

 *jos3ph wrote:*   

> giovani, non so come ringraziarvi 
> 
> ora, se non ho capito male, se io voglio installare un pacchetto (ipotesi: un pacchetto di nome calcolatrice)
> 
> devo dare come comando emerge calcolatrice e gentoo pensa a scaricare il sorgente di quel pacchetto, risolvere le eventuali dipendenze,
> ...

 

Esatto lui scarica/compila/installa. Per esempio se il programma calcolatrice avesse come optional (FLAG)  "scientifica" (x far diventare la calcolatrice in scientifica) lo potresti vedere aggiungendo un -vp all'emerge

in pratica se nelle USE nel file make.conf non hai impostato la FLAG "scientifica" quando darai un:

```

# emerge calcolatrice -pv

```

ti darà come out

```

calc-app/calcolatrice 2kb -libscientifica

```

Se invece aggiungi la flag scientifica nel make.conf avrai

```

# emerge calcolatrice -pv

calc-app/calcolatrice 2kb +libscientifica

calc-app/libscientifica 8kb   

```

----------

## CarloJekko

 *-YoShi- wrote:*   

> 
> 
> ```
> 
> # emerge calcolatrice -pv
> ...

 

Dove posso trovare queste librerie libscientifica  :Laughing:   :Laughing:   :Laughing: 

Sono sotto gpl ?  :Laughing:   :Laughing:   :Laughing:   :Laughing: 

----------

## otaku

I pacchetti binari ufficiali sono disponibili solo per applicazioni molto grandi da compilare (firefox/openoffice per citarne due), o per le applicazioni proprietarie (cedega,acroread...), ogni volta che compili un pacchetto, puoi creare un tbz2 (si chiamano così? non ricordo bene) che, previa impostazione di emerge, puoi usare come un comunissimo rpm per intenderci  :Smile: 

Per quanto riguarda le use... ti faccio un esempio veloce... esiste la use [kde] e la use [gnome], puoi impostarne una o tutte e due, per avere un sistema integrato con uno di questi DE o con nessuno se vengono impostate negative tutte e due... così impostando a -gnome -kde e +gtk avrai un sitema gtk "puro" ottimo per i computer datati o notebook che necessitano di più autonomia possibile  :Wink: 

le use sono davvero tante, quindi le possibilità sono infinite, in oltre puoi specificare opportune use per ogni singolo pacchetto

----------

## -YoShi-

 *CarloJekko wrote:*   

> 
> 
> Dove posso trovare queste librerie libscientifica   
> 
> Sono sotto gpl ?    

 

GPL?!?  :Shocked:   No nn mi pare vadano a metano.. 

 :Laughing:   :Laughing:   :Laughing: 

Dai xò era abbastanza chiaro come esempio no?  :Question:   :Wink: 

----------

## masterbrian

 *jos3ph wrote:*   

> 
> 
> in modo che scarichi i pacchetti già compilati da un ftp dove sono presenti tutti i pacchetti, ma ricompilati per p4? e se non ci sono allora scarica
> 
> i sorgenti e li compila?
> ...

 

Per questo esiste un progetto, ancora in giovane eta' per rendere disponibili i pacchetti di gentoo con localizzazione italiana, disponibili compilati e non tramite un server su internet. Solo che le cose vanno a rilento e non so quando diventera' operativo.

Cmq se e' vero che l'installazione e' piu' lunga che con una debian o una redhat in cui prendi i pacchetti e li installi senza compilarli, le differenze in termini di prestazioni sono sensibili, come avrai modo di constatare con i tuoi occhi  :Cool: 

Prova la differenza fra un kernel ottimizzato e uno normale, o fra un openoffice-bin e uno fatto ad hoc x il tuo sistema.

Ovviamente, come ti e' stato suggerito in questo 3d, per poter avere degli incrementi prestazionali, devi far buon uso delle tue cflags.

----------

## jos3ph

 *otaku wrote:*   

> I pacchetti binari ufficiali sono disponibili solo per applicazioni molto grandi da compilare (firefox/openoffice per citarne due), 
> 
> 

 

ma sono disponibili per le varie architetture, o, per esempio il binario di firefox, è compilato genericamente per i386?

 *otaku wrote:*   

> ogni volta che compili un pacchetto, puoi creare un tbz2 (si chiamano così? non ricordo bene) che, previa impostazione di emerge, puoi usare come un comunissimo rpm per intenderci 
> 
> 

 

quindi posso scaricare e compilare un pacchetto a casa, ottimizzandolo per p4, salvarlo su cd, e poi copiarlo e installarlo sul server al lavoro già ottimizzato per p4?

----------

## masterbrian

 *jos3ph wrote:*   

> quindi posso scaricare e compilare un pacchetto a casa, ottimizzandolo per p4, salvarlo su cd, e poi copiarlo e installarlo sul server al lavoro già ottimizzato per p4?

 

Certo, puoi fare anche cross compiling se vuoi  :Smile:  O se hai piu' di una macchina compilazione distribuita con distcc.

Considera che sul manuale di gentoo (handbook), la parte che riguarda l'installazione, troverai che nel cd di gentoo, ci sono anche molti pacchetti precompilati, per velocizzare la prima installazione. 

Ovviamente hanno flag molto generiche, per mantenere una grande compatibilita' e per motivi di spazio su cd  :Cool: 

----------

## otaku

 *jos3ph wrote:*   

> ma sono disponibili per le varie architetture, o, per esempio il binario di firefox, è compilato genericamente per i386?

 

mm firefox e openoffice sono compilati per i{3,6}86, non ricordo bene

 *jos3ph wrote:*   

> quindi posso scaricare e compilare un pacchetto a casa, ottimizzandolo per p4, salvarlo su cd, e poi copiarlo e installarlo sul server al lavoro già ottimizzato per p4?

 

si  :Smile:  occhio alle USE però  :Razz: 

----------

## jos3ph

ultimissima cosa  :Smile: 

dunque, io installo gentoo, se voglio installare "calcolatrice" allora modifico i file del gcc per ottimizzare la compilazione per p4. poi faccio

emerge calcolatrice

e me la trovo bella che scaricata scompattata compilata per p4 e installata

poi cosa devo fare per salvarla su cd e copiarla già compilata sul computer al lavoro?

----------

## otaku

```
emerge -b <pacchetto>
```

dove -b è

```
--buildpkg (-b short option)

       Tell emerge to build binary packages for all ebuilds processed

       (in addition to actually merging the packages.  Useful for

       maintainers or if you administrate multiple Gentoo Linux

       systems (build once, emerge tbz2s everywhere) as well as disaster

       recovery.
```

cmq trovi tutto nell'help di emerge  :Wink: 

----------

## jos3ph

 *otaku wrote:*   

> 
> 
> ```
> emerge -b <pacchetto>
> ```
> ...

 

cioè se io do

emerge -b calcolatrice

(dove calcolatrice è il nome inventato di un pacchetto)

il pacchetto viene sia scaricato compilato e installato sul mio sistema sia salvato in formato binario per l'installazione su un'altra macchina, giusto?

----------

## Ic3M4n

così però devi specificarlo per ogni pacchetto. se guardi il man di make.conf

```
man make.conf
```

puoi vedere come impostarlo per ogni emerge. 

come avrai capito tutto il sistema gentoo gira attorno a questo file, che specifica le opzioni generali, le flag,le impostazioni di gcc, le use generiche da utilizzare per tutti i pacchetti

----------

## otaku

 *jos3ph wrote:*   

> cioè se io do
> 
> emerge -b calcolatrice
> 
> (dove calcolatrice è il nome inventato di un pacchetto)
> ...

 

exactamundo  :Wink: 

----------

## jos3ph

giovani, vi ringrazio tantissimo  :Smile: 

----------

## otaku

 *jos3ph wrote:*   

> giovani, vi ringrazio tantissimo 

 

di niente  :Razz: 

----------

## gutter

Per favore metti il tag [Risolto] al titolo del post  :Wink: 

----------

## jos3ph

 *gutter wrote:*   

> Per favore metti il tag [Risolto] al titolo del post 

 

così va bene?

pardon ma non conoscevo questa regola...  :Smile: 

----------

## gutter

 *jos3ph wrote:*   

> 
> 
> così va bene?
> 
> pardon ma non conoscevo questa regola... 

 

Va benissimo  :Wink: 

Permettimi di consigliarti la lettura delle LINEE GUIDA

----------

