Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
gcc-4.3.2 stable per amd64
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian)
View previous topic :: View next topic  
Author Message
dynamite
Tux's lil' helper
Tux's lil' helper


Joined: 26 Jun 2007
Posts: 114
Location: Rovereto (TN)

PostPosted: Mon Mar 30, 2009 4:29 pm    Post subject: gcc-4.3.2 stable per amd64 Reply with quote

Ciao a tutti, sono alle prese con il primo vero aggiornamento delle gcc da quando uso gentoo, in particolare passo da 4.1.2 a 4.3.2. Sono andato a leggere la guida nella documentazione e quindi se ho ben capito devo dare:
Code:
(Si ponga attenzione a sostituire "i686-pc-linux-gnu-4.1.1" con la versione del GCC a cui si è aggiornato e l'impostazione per CHOST del proprio sistema)
# gcc-config i686-pc-linux-gnu-4.1.1
# env-update && source /etc/profile
(Ricompilazione di libtool)
# emerge --oneshot -av libtool

e poi aggiornare system e world.
Ho però alcuni dubbi:
1. Perchè devo ricompilare libtool? Vale in generale o si riferisce all'aggiornamento dalla versione 3 a 4 (dalla documentazione non si capisce bene)?
2. Ho letto che dalla versione 4.2 in poi, è supportata l'opzione "march=native" e da questa versione in particolare "march=core2", quale delle due è da preferire?

Scusate ma sono piuttosto ignorante e qui non dicono molto.

p.s.: posseggo un T7300 e sono in amd64.

Grazie mille
Back to top
View user's profile Send private message
publiosulpicio
Apprentice
Apprentice


Joined: 31 Aug 2008
Posts: 150

PostPosted: Mon Mar 30, 2009 4:46 pm    Post subject: Reply with quote

Io uso senza nessun problema questa guida: https://forums.gentoo.org/viewtopic-t-494331.html. È molto dettagliata, non puoi sbagliare. Sto ricompilando in questo momento!

N.B. Forse l'unica cosa che la guida non specifica è che potrebbe essere opportuno fare dei cambiamenti a make.conf, io per esempio sono passato da march=nocona a march=core2 (non ho ancora capito se march=native sia meglio). Controlla qui http://en.gentoo-wiki.com/wiki/Safe_Cflags/Intel se per il tuo processore c'è qualcosa di nuovo con la nuova versione di GCC.
Back to top
View user's profile Send private message
dynamite
Tux's lil' helper
Tux's lil' helper


Joined: 26 Jun 2007
Posts: 114
Location: Rovereto (TN)

PostPosted: Mon Mar 30, 2009 5:03 pm    Post subject: Reply with quote

Grazie per l'utile link. Pensavo anch'io di passare a "core2", ma appunto ero in cerca di qualche conferma... Vedrò di mettermi nei prossimi giorni ad eseguire il tutto, perchè in ogni caso è un processo decisamente lungo... :D
Back to top
View user's profile Send private message
cloc3
Advocate
Advocate


Joined: 13 Jan 2004
Posts: 4657
Location: http://www.gentoo-users.org/user/cloc3/

PostPosted: Mon Mar 30, 2009 5:23 pm    Post subject: Re: gcc-4.3.2 stable per amd64 Reply with quote

dynamite wrote:

Ho però alcuni dubbi:
1. Perchè devo ricompilare libtool?

non lo so, ma ti assicuro che devi farlo.
libtool dovrebbe essere il programma che esegue l'ultima fase della compilazione (linking ?).
evidentemente ha bisogno di conoscere il gcc attuale per funzionare a dovere.
dynamite wrote:

2. Ho letto che dalla versione 4.2 in poi, è supportata l'opzione "march=native" e da questa versione in particolare "march=core2", quale delle due è da preferire?

l'opzione native legge il file /proc/cpuinfo ed opera le proprie scelte di compilazione.
core2 segue le istruzioni di una qualche tabella messa da qualche parte.

probabilmente, se il tuo processore è un core2, produci lo stesso identico codice o quasi.
se invece hai un processore che non è un core2, ma vuoi produrre pacchetti ottimizzato per un core2, allora devi assolutamente scegliere la seconda opzione.
_________________
vu vu vu
gentù
mi piaci tu
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Mon Mar 30, 2009 6:47 pm    Post subject: Reply with quote

native te la sconsiglio come opzione. Non tanto per i risultati quanto per l'impossibilità a trovare eventuali pacchetti da ricompilare e poter gestire senza troppe paranoie il cross building (se poi hai più computer tutti con la medesima cpu puoi anche fregartene).
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:
Back to top
View user's profile Send private message
dynamite
Tux's lil' helper
Tux's lil' helper


Joined: 26 Jun 2007
Posts: 114
Location: Rovereto (TN)

PostPosted: Tue Mar 31, 2009 6:30 am    Post subject: Reply with quote

Grazie delle risposte, ho un solo pc con gentoo, quindi alcuni problemi lì posso evitare senza sforzo :wink: penso che per adotterò core2 per non sbagliare... sì prospettano almeno due giorni di compilazione... 8O
Back to top
View user's profile Send private message
Krog
Guru
Guru


Joined: 26 Jun 2007
Posts: 330
Location: Roma, Italy

PostPosted: Tue Mar 31, 2009 9:25 am    Post subject: Reply with quote

salve, anche io stavo aggiornando gcc
è proprio necessario ricompilare tutto system e word? sul mio macinino ci vorranno giornate...
grazie per la risposta :-)
Back to top
View user's profile Send private message
publiosulpicio
Apprentice
Apprentice


Joined: 31 Aug 2008
Posts: 150

PostPosted: Tue Mar 31, 2009 10:29 am    Post subject: Reply with quote

Bhè, se gcc 4.1.2 non ti ha dato problemi puoi tenere quello (come dice la guida! In sostanza non fare nulla dopo l'aggiornamento, avrai semplicemente due versioni installate, ma il sistema continuerà ad usare quella vecchia). Dopo l'agiornamento emerge --depclean cercherà di disinstallare la versione 4.1.2, basta che la aggiungi al tuo file di world con emerge --noreplace =sys-devel/gcc-4.1.2.
Back to top
View user's profile Send private message
Krog
Guru
Guru


Joined: 26 Jun 2007
Posts: 330
Location: Roma, Italy

PostPosted: Tue Mar 31, 2009 10:56 am    Post subject: Reply with quote

ho ricompilato libtool, kernel, moduli esterni e sto compilando kde4 (overlay) con questo nuovo gcc (ma solo perchè è uscito un nuovo snapshot), sembra anche un pochetto più veloce.
ma NON ho ricompilato tutto system e word... devo aspettarmi problemi?
Back to top
View user's profile Send private message
mack1
Guru
Guru


Joined: 18 Mar 2006
Posts: 315

PostPosted: Tue Mar 31, 2009 2:36 pm    Post subject: Reply with quote

Se non c'è un cambio di abi a livello del compilatore il passaggio ad una nuova versione del gcc non comporta una incompatibilità dei binari prodotti, quindi non devi ricompilare tutto.
Di problemi non dovresti averne, io mi sono fatto la 4.1.2>>>4.2.3>>>4.3.2>>>4.3.3 ed è filato tutto liscio :D .
Comunque di norma, dopo un passaggio di versione, dovresti almeno ricompilare la toolchain (gcc,glibc e binutils) anche se non è obbligatorio, alcuni si fanno poi il system ed infine i più coraggiosi riemergono il mondo :) (vogliono avere i binari ottimizzati con l'ultima versione di gcc installata).
Qui trovi la guida ufficiale:

http://www.gentoo.org/doc/it/gcc-upgrading.xml

Libtool è uno strumento per aumentare la portabilità del software fra vari sistemi unix-like, astraendo la complessità del processo di linking.
http://en.wikipedia.org/wiki/Libtool
http://en.wikipedia.org/wiki/GNU_build_system

Ciao
Back to top
View user's profile Send private message
Krog
Guru
Guru


Joined: 26 Jun 2007
Posts: 330
Location: Roma, Italy

PostPosted: Tue Mar 31, 2009 3:43 pm    Post subject: Reply with quote

thanks!
Back to top
View user's profile Send private message
fbcyborg
Advocate
Advocate


Joined: 16 Oct 2005
Posts: 3056
Location: ROMA

PostPosted: Thu Apr 02, 2009 6:00 pm    Post subject: Reply with quote

Io seguo la guida ufficiale.
Al codice 2.2 dice di fare
Code:
# emerge -eav system
# emerge -eav world

Io sto facendo prima world e poi system. Ma system non è incluso in world???
_________________
[HOWTO] Come criptare la /home usando cryptsetup e luks
[HOWTO] Abilitare il supporto al dom0 XEN su kernel 3.X
Help answer the unanswered
Back to top
View user's profile Send private message
Scen
Retired Dev
Retired Dev


Joined: 29 Jul 2003
Posts: 2470
Location: Padova, Italy

PostPosted: Thu Apr 02, 2009 6:32 pm    Post subject: Reply with quote

fbcyborg wrote:
Io sto facendo prima world e poi system. Ma system non è incluso in world???

system è l'insieme dei pacchetti di sistema, ovvero quelli che ti ritrovi installati dopo aver scompattato lo stage3. world è l'insieme di pacchetti installati, direttamente o indirettamente, di propria volontà (tramite [i]emerge <pacchetto</i]).

Fino ad un pò di tempo fa il metapacchetto world includeva anche quello system.

Con le versioni più recenti di Portage ciò non è più vero (non ricordo da quando, perdona).

Qui c'è una discussione a riguardo, sulla ML gentoo-dev.

Tu segui la guida alla lettera, ovvero prima system e poi world, che è meglio (come diceva il puffo Quattrocchi 8) )
_________________
I was born in a deep forest/I wish I could live here all my life/I am made from stones and roots/My home, these woods and roads
All my life I loved this sound/Of the woods all around/Eagles flies where the winds blows free
Journey is my destiny
Back to top
View user's profile Send private message
fbcyborg
Advocate
Advocate


Joined: 16 Oct 2005
Posts: 3056
Location: ROMA

PostPosted: Thu Apr 02, 2009 6:34 pm    Post subject: Reply with quote

Grazie mille. Non avevo letto il fatto che system non fosse più incluso in world.
_________________
[HOWTO] Come criptare la /home usando cryptsetup e luks
[HOWTO] Abilitare il supporto al dom0 XEN su kernel 3.X
Help answer the unanswered
Back to top
View user's profile Send private message
riverdragon
Veteran
Veteran


Joined: 14 Sep 2006
Posts: 1269
Location: Verona

PostPosted: Thu Apr 02, 2009 8:33 pm    Post subject: Reply with quote

E comunque ai tempi il senso era: visto che usi i pacchetti in system per compilare i pacchetti in system è buona cosa fare due giri; col primo compili system con la toolchain vecchia, quando la toolchain nuova è pronta la puoi usare per ricompilare se stessa e tutto il resto del sistema. Probabilmente si sono accorti che non serviva.
Back to top
View user's profile Send private message
mack1
Guru
Guru


Joined: 18 Mar 2006
Posts: 315

PostPosted: Fri Apr 03, 2009 9:29 am    Post subject: Reply with quote

La guida giustamente consiglia di ricompilare prima il system e poi world, che è il sistema per non avere problemi, visto che i fattori da tenere in considerazione sono innumerevoli (cambio di ABI senza retrocompatibilità,modifica delle flags attivate di default da gcc, modifica delle CFLAGS/CXXFLAGS/LDFLAGS da parte dell'utente per avvantaggiarsi delle nuove caratteristiche offerte, varie ed eventuali).
Ho sbagliato a portare un'esperienza personale :oops: come fosse la norma su una procedura in cui rientrano molti fattori da considerare e che può, se mal gestita, portare alla "rottura" del sistema, ciò non toglie che la ricompilazione sia del tutto superflua in casi di aggiornamenti di minor release (es. da gcc-x.x.2 a gcc-x.x.3) poichè trattasi di bugfix nella stragrande maggioranza dei casi o se l'utente, seguendo lo sviluppo di gcc, non riscontra quei fattori (citati sopra) che potrebbero portare problemi.
Ok il vero geek ricompila sempre due volte :D :

http://www.youtube.com/watch?v=6WxJECOFg8w

Ciao
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Fri Apr 03, 2009 2:20 pm    Post subject: Reply with quote

vedi che non è necessario compilare due volte, è necessario compilare prima tutte le dipendenze di system. A meno che non vuoi impazzire a crearti un tuo script per gestire la giusta sequenza il mentodo più semplice è compilare due volte.

tanto per fare il puntiglioso come al solito. :twisted:
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:
Back to top
View user's profile Send private message
publiosulpicio
Apprentice
Apprentice


Joined: 31 Aug 2008
Posts: 150

PostPosted: Fri Apr 03, 2009 5:18 pm    Post subject: Reply with quote

djinnZ wrote:
vedi che non è necessario compilare due volte, è necessario compilare prima tutte le dipendenze di system. A meno che non vuoi impazzire a crearti un tuo script per gestire la giusta sequenza il mentodo più semplice è compilare due volte.

tanto per fare il puntiglioso come al solito. :twisted:


Lo script qui https://forums.gentoo.org/viewtopic-t-494331.html dovrebbe fare esattamente questo. A me ha funzionato!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum