# [Chiuso_Non risolto]Compilare gentoo usando pc più veloce

## saverik

Ciao,

come da titolo vorrei installare gentoo su  un vecchio notebook  con cpu  amd zm84 e video hd 3400 usando il mio pc amd fx 6100  con video radeon .

hd6950.

Avevo pensato di clonare la partizione di sistema del pc sul note ma ho kernel panic etc....

Quindi opterei ,in mancanza di suggerimenti ,di usare il pc piu veloce per  compilare gentoo e poi installare sul vecchio notebook.

Ehmm... da dove comincio????  :Embarassed:   :Embarassed:   :Embarassed:   :Embarassed: 

ps:ho cercato sul forum ma mi manca la procedura di start...insomma da dove parto????

----------

## pierino_89

Fai il solito chroot (sul portatile potente) con tutta la procedura di installazione, installi tutto e poi lo copi sul vecchio portatile. A quel punto sali con una live sul vecchio portatile, chroot, compili il kernel, installi il bootloader, eventualmente installi ciò che hai dimenticato e hai finito. Dunque riavvia e prega   :Razz: 

----------

## saverik

beh allora posso usare il mio sistema backuppato sul nuovo, chroot e ricompilo con nuove ccfags etc.... 

penso che "si può fareeee!!!!!""

giusto?

----------

## pierino_89

 *saverik wrote:*   

> beh allora posso usare il mio sistema backuppato sul nuovo, chroot e ricompilo con nuove ccfags etc.... 
> 
> penso che "si può fareeee!!!!!""
> 
> giusto?

 

Sì esatto, fintanto che "ribassi" le cflags è tutto a posto.

----------

## sabayonino

 *pierino_89 wrote:*   

>  *saverik wrote:*   beh allora posso usare il mio sistema backuppato sul nuovo, chroot e ricompilo con nuove ccfags etc.... 
> 
> penso che "si può fareeee!!!!!""
> 
> giusto? 
> ...

 

non proprio. 

se utilizza un backup di un sistema con  CPU flags non supportate dal sistema "vecchio" potrebbe ritrovarsi con delle "Illegal Instrction" et simili...

e nemmeno un "cd" o "ls" potrebbe funzionare.

se passa da un Intel ad un AMD (o viceversa) i casini pottebbero aumentare.

se utilizza delle Flags "retrocompatibili"allora si.

consiglio una compilazione generica con pacchetti precompilati oppure se setti il -march corretto subito ...

una strada che potresti provare (la utilizzai un paio di anni fa)  tra le tante è :

creare un sets di tutti i pacchetti installati :

la directory per il set se non esiste :

```
# mkdir -p /etc/portage/sets
```

lista dei pacchetti installati (utilizzando eix)

```
# eix-installed -q= all > /etc/portage/sets/all-set
```

creare solo il pacchetto binario (che lo troverai di default in /usr/portage/packages/*)

verrà compilato e pacchetizzato ma non installato :

```
# CFLAGS="-O2 -pipe -march=x86-64" CXXFLAGS=${CFLAGS} emerge -Ba @all-set
```

armati di pazienza ...

nel frattempo tramite live puoi prepararti partizionato il vecchio PC e montare le partizioni 

a lavoro ultimato puoi trasferire il contenuto /usr/portage/ nel pc vecchio impostando il set precedente (copia il file /etc/portage/sets/all-set)

procedi con l'installazione dei binari :

```
# emerge -K @all-set
```

mentre installa imposta il make.conf corretto per il pc vecchio.

procedi con la compilazione del kernel per quella macchina , installa grub , aggiungi l'utente etc secondo il manuale di installazione.

riavvia ed incrocia le dita.   :Very Happy: 

l'ottimizzazione puoi farla man mano che aggiorni se non sono pacchetti pesanti.

utilizzando "genlop" puoi controllare i parametri impostati per ogni singolo pacchetto (ed altro)

All'epoca funzionò abbastanza bene (tranne qualche pacchetto installato a mano) ... trasferito da core2 su un pentium4 

compilai sul core2 con 

```
CFLAGS="-O2 -pipe -march=nocona "
```

(non ricordo se misi anche -fomit-frame-pointer)

alcuni pacchetti non andarono molto a braccetto con -fomit &C ... ma ...

con qualche accorgimento poi installai il tutto diciamo molto velocemente   :Rolling Eyes: 

aggiustando il make.conf poi ricompialio solo una 30ina di apcchetti (non era molto voluminso ...)

----------

## pierino_89

 *sabayonino wrote:*   

> 
> 
> non proprio. 
> 
> se utilizza un backup di un sistema con  CPU flags non supportate dal sistema "vecchio" potrebbe ritrovarsi con delle "Illegal Instrction" et simili...
> ...

 

Se parte da un "sistema più nuovo" e deve andare su un "sistema più vecchio" e sono ambedue AMD, mi sembra molto improbabile che il vecchio supporti istruzioni che il nuovo non supporta. Ci va proprio una sfiga forte  :Laughing: 

Ovviamente bisogna impostare correttamente le CFLAGS prima di ricompilare tutto... Appunto, "Ribassarle" al livello del vecchio processore  :Razz: 

----------

## sabayonino

il zm-84 è della serie k8 

SafeCFLAGS

```
64 bit

CHOST="x86_64-pc-linux-gnu"

CFLAGS="-march=k8 -msse3 -O2 -pipe"

CXXFLAGS="${CFLAGS}"

```

(ma potrebbe optare anche per qualcosa di più "leggero" e generico evitando eventuali sorprese con -march=x86-64)

idem per la  serie "mobile"

al volo senza modificare nulla sul pc "muscoloso" (supponendo di mantenere le stesse USE)

```
# CFLAGS="-march=k8 -msse3 -O2 -pipe" CXXFLAGS="${CFLAGS}" emerge -aB @<tuo-set>
```

oppure senza set(s) (così si può instllare quello che serve e non tutto)

```
# CFLAGS="-march=k8 -msse3 -O2 -pipe" CXXFLAGS="${CFLAGS}" emerge -aB $(eix-installed -q= all)
```

(sperando che nel pc pompato non abbiano segato qualche vecchia-istruzione    :Mr. Green:   :Laughing:   ...  )

potrebbe anche impostare distcc

ma credo che  prepararsi i pacchetti binari (di tutto il sistema o di quello che serve) sia la via più ..."semplice"

per installare i binari utilizzando il set(s) , come sopra

se non ha utilizzato il "set" può richiamare solo il pacchetto che gli serve (e le dipendenze vengono richiamate in automatico)

```
# emerge -aK <pacchetto-binario>
```

esempio : libreoffice (e dipendenze) se installlato ed impacchettato

```
# emerge -aK libreoffice
```

(tutte le dipendenze dovrebbero essere soddisfatte se non si sono modificate le USE o altre variabili di compilazione nel make.conf)

----------

## loxdegio

Io vi consiglierei di vedere come funziona distcc (la rete va configurata in modo statico però)

----------

## saverik

 *saverik wrote:*   

> beh allora posso usare il mio sistema backuppato sul nuovo, chroot e ricompilo con nuove ccfags etc.... 
> 
> penso che "si può fareeee!!!!!""
> 
> giusto?

 

Ciao a tutti ed eccomi a rifarmi vivo.

Il lavoro mi ammazzerà, prima o poi dovrò smettere!!!1  :Laughing:   :Laughing: 

1 °tentativo:

Ho  provato a fare la cosa sopra ma ho avuto un kernel panic!!!

2° tentativo:

ho rifatto la stessa cosa ma con kernel precedentemente ricompilato per il pc vecchio e ho avuto lo stesso un kernel panic.

praticamente ho fatto come suggerito :

 *pierino_89 wrote:*   

> Fai il solito chroot (sul portatile potente) con tutta la procedura di installazione, installi tutto e poi lo copi sul vecchio portatile. A quel punto sali con una live sul vecchio portatile, chroot, compili il kernel, installi il bootloader, eventualmente installi ciò che hai dimenticato e hai finito. Dunque riavvia e prega  

 

Lo so ho preso la via più breve  :Very Happy:   :Very Happy:   :Very Happy: 

Non posso usare  distcc perche i pc sono in due posti differenti...

Quindi partirei da qui se ho capito bene....

[quote="sabayonino"]	

armati di pazienza ...

nel frattempo tramite live puoi prepararti partizionato il vecchio PC e montare le partizioni

a lavoro ultimato puoi trasferire il contenuto /usr/portage/ nel pc vecchio impostando il set precedente (copia il file /etc/portage/sets/all-set)

procedi con l'installazione dei binari :

Codice:	

# emerge -K @all-set	

mentre installa imposta il make.conf corretto per il pc vecchio.

procedi con la compilazione del kernel per quella macchina , installa grub , aggiungi l'utente etc secondo il manuale di installazione.

riavvia ed incrocia le dita.  :Very Happy: 

----------

## djinnZ

Usare il suggerimento che ho postato a suo tempo in documentazione?

----------

## saverik

 *djinnZ wrote:*   

> Usare il suggerimento che ho postato a suo tempo in documentazione?

 

intendi questa?

https://forums.gentoo.org/viewtopic-t-883802-highlight-.html

appena ho un attimo la testo....

(con tutti i limiti dovuti alla mia conoscenza della materia....  :Embarassed:   :Embarassed:  )

----------

## sabayonino

 *djinnZ wrote:*   

> Usare il suggerimento che ho postato a suo tempo in documentazione?

 

ma se ha una macchina con cpu flag diverse può andar bene con compilazione generica (i686,i386,x86-64 etc etc)...

----------

## saverik

Chiudo il post perche mi si e' rotto il notebook (fritta la mobo)...sostituito con un dell e6420  :Very Happy: 

----------

