# upgrade Gcc to 4.3.1

## Maialovic

ragasuoli carissimi

secondo voi è una pazzia aggiornare Gcc alla versione 4.3.1 fregandonese che sia bloccata?

perche onestamente me so rotto del fatto che prima che venga "di natura" aggiornato dalla gentoo passi un botto di tempo....ormai la versione 4.3.0 è uscita da 3 bei mesi pieni pieni.....perche non stabilizzarla?

eventualmente dovessi fare sto aggiornamento, cosa andrei contro? rischi quali sarebbero?

io la vedo solamente che si potrebbero solo guadagnare prestazioni  :Razz: 

PS. e cmq sarebbe ovvio che se dovessi aggiornarlo, poi fare un bel emerge -e system seguito da un bel emerge -e world

----------

## comio

 *Maialovic wrote:*   

> ragasuoli carissimi
> 
> secondo voi è una pazzia aggiornare Gcc alla versione 4.3.1 fregandonese che sia bloccata?
> 
> perche onestamente me so rotto del fatto che prima che venga "di natura" aggiornato dalla gentoo passi un botto di tempo....ormai la versione 4.3.0 è uscita da 3 bei mesi pieni pieni.....perche non stabilizzarla?
> ...

 

premesso che 3 mesi sono un tempo irrisorio per un compilatore.... prima che venga definito stabile. Hai qualche motivo per passare al 4.3.1? tipo necessità di supporto per una architettura? Sai quali benefici avrai? 

Poi levatevi dalla testa compilatore più nuovo migliori prestazioni nel codice generato... Quando si fa la versione successiva non si riscrive il generatore di codice da 0... quindi fra 4.3.x e 4.2.x non ci sono enormi differenze nel codice oggetto generato. Discorso diverso se intendi alcuni tipi di ottimizzazione di cui tu sei sicuro di avere benefici...

in ogni caso vivo con il 4.3.1 da un pezzo (semplicemente perché mi piace fare i bug-reports) e non ho avuto grosis problemi. Inoltre per lavoro devo lottare con m68k/coldfire che sono finalmente supporati in main-stream... ed avere il compilatore anche su x86 mi consente di fare il man per vedere le opzioni  :Smile:  senza andare su google.

non hai necessità di rifare il riemerge di tutto dato che l'abi del 4.3.x è identica al 4.2.x (e 4.1.x) tanto vale che ricompili man mano che esce roba nuova... poi però racconti i benefici cronometrici dei nuovi esegubili  :Wink: 

ciao

luigi

----------

## Maialovic

Dipende dal punto di vista, secondo me, il tempo necessario per definire stabile o meno un compilatore......

la mi osservazione sarebbe la seguente : perchè secondo voi quelli della gcc allora lo hanno rilasciato se ancora non è da considerarsi stabile?

ovviamente la cosa che mi si puo dire è che loro la giudicano buona, ma poi se c'è qualcosa che non va piangeremo le conseguenze noi.

non per fare critica perche sarebbe secondo me fiato perso perche non si puo dire niente  a gentoo, però onestamente ai tempi ho abbandonato debian per la lentezza di rilascio pacchetti....ma gentoo per alcuni di essi è allo stesso livello di diebian

----------

## Kind_of_blue

beh ... gcc 4.3.1 non è bloccato ... non è nemmeno mascherato ... è "protetto da keyword".

Mi sembra il minimo, dato che riguarda tutti ... e forse è il caso che nel momento in cui anche chi non usa volontariamente pacchetti (~arch) si ritroverà l'aggiornamento da fare, il tutto sia, oltre che stabile, anche pienamente documentato nel forum e nei manuali, nel caso di piccoli disguidi.

la protezione da keyword, piu che un mascheramento, la vedo come un avviso

----------

## randomaze

Moved from Forum italiano (Italian) to Forum di discussione italiano.

 *Maialovic wrote:*   

> perchè secondo voi quelli della gcc allora lo hanno rilasciato se ancora non è da considerarsi stabile?

 

Beh il fatto che secondo loro sia stabile significa che ha superato tutti i test, non che sia esente da difetti i quali potrebbero derivare da combinazioni particolari di hardware/software.

Oppure potrebbe non compilare alcuni pacchetti da te installati scritti utilizzati un c/c++ "sui generis".

Oppure... chissà.

Fai una ricerca nel forum... dovrebbero esserci un paio di thread che risalgono al passaggio gcc3->gcc4 dove l'argomento è trattato a dovere (e purtroppo, se non ricordo male, con toni non sempre tranquilli).

----------

## Luca89

Consideriamo anche il fatto che Gentoo non usa gcc così com'è, ma lo installa in modo particolare (slotted, quindi in posizioni non previste dai programmatori gnu) e applica le proprie patch. Inoltre gcc è la chiave di tutto il sistema gentoo assieme al resto della toolchain, senza gcc una gentoo non può fare nulla. Quindi mi pare ovvio che prima di rendere una versioni di gcc stabile gli sviluppatori ci pensino un pochettino e facciano i test adeguati.

Poi se si vuole provare la versione mascherata per il gusto di sperimentare è una cosa buona, ma allo stesso tempo vuol dire che bisogna accettare eventuali problemi e risolverseli da soli. Se non si vogliono problemi gravi da risolvere, meglio rimanere su stabile e aspettare che gli sviluppatori e altre persone lo facciano per noi. Questo vale in generale per tutti i pacchetti, in particolare su gcc bisogna considerare che per fare bug report e risolvere i problemi bisogna spesso avere ottime conoscenze di programmazione e magari di sistemi operativi, quindi visto che è un programma "che non vediamo" personalmente io non ho voglia di avere problemi con GCC e lo consiglio anche agli altri. Al contrario di altri software per esempio Gnome, la quale ultima versione può essere magari più bella da usare e anche la soluzione di eventuali problemi è più facile.

Io consiglio di sperimentare su software che si sanno gestire, come possono essere applicativi grafici di vario tipo, anche perchè un eventuale guasto non compromette il sistema. Mentre lasciare perdere smanettamenti senza validi motivi con pacchetti fondamentali del sistema come gcc, glibc o altro e farlo fare a chi è più preparato di noi.

Poi che la nuova versione porti prestazioni migliori la vedo molto dura..

----------

## !equilibrium

 *Maialovic wrote:*   

> secondo voi è una pazzia aggiornare Gcc alla versione 4.3.1 fregandonese che sia bloccata?

 

sì lo è.

 *Maialovic wrote:*   

> perche onestamente me so rotto del fatto che prima che venga "di natura" aggiornato dalla gentoo passi un botto di tempo....ormai la versione 4.3.0 è uscita da 3 bei mesi pieni pieni.....perche non stabilizzarla?

 

perchè ci sono ancora numerosi bug che pendono sulla serie 4.3.x?

 *Maialovic wrote:*   

> eventualmente dovessi fare sto aggiornamento, cosa andrei contro? rischi quali sarebbero?

 

la versione 4.3.x abilita di default determinate cflags che nelle precedente versioni non lo erano, questo fa sì che il 90% del software presente in portage fallisca la compilazione (non è colpa di gcc, ma del software scritto male); la stabilizzazione di gcc 4.3 è lenta perchè prima bisogna risolvere i problemi di compilazione dei pacchetti (e sono tanti).

 *Maialovic wrote:*   

> io la vedo solamente che si potrebbero solo guadagnare prestazioni 

 

falso; se parli dell'introduzione degli alias -mtune=core2 -march=core2 per i nuovi processore Intel Duo & C., sappi che sono appunto "solo alias" (per non farti scrivere -march=prescott -mnonna_papera -mpluto -mpaperino -fimcool). il binario che crea è ancora indentico a quello delle versioni precedenti di gcc (4..2), quindi niente "prestazioni in più".

nota a margine: il binario creato da gcc per in nuovi processori Intel di tipo multicore è già ottimizzato al massimo, lo ha detto la stessa Intel nella ML di gcc, confermando la validità dell'attuale -march, quindi, sperare in maggiori prestazioni al cambio di versione di gcc è totalmente senza senso (ora vedo se riesco a ripescare la ML e poi la linko qui).

 *Maialovic wrote:*   

> PS. e cmq sarebbe ovvio che se dovessi aggiornarlo, poi fare un bel emerge -e system seguito da un bel emerge -e world

 

sarebbe tutto inutile per i motivi che ho esposto sopra.

 *Maialovic wrote:*   

> Dipende dal punto di vista, secondo me, il tempo necessario per definire stabile o meno un compilatore......
> 
> la mi osservazione sarebbe la seguente : perchè secondo voi quelli della gcc allora lo hanno rilasciato se ancora non è da considerarsi stabile?

 

piccolo dettaglio: non è scritto da nessuna parte sul sito della GNU che gcc 4.3 è stabile, come non lo è scritto per nessuna release.

lo sviluppo di gcc funziona in modo totalmente diverso da quello che tu immagini, informati meglio.

 *Maialovic wrote:*   

> non per fare critica perche sarebbe secondo me fiato perso perche non si puo dire niente  a gentoo, però onestamente ai tempi ho abbandonato debian per la lentezza di rilascio pacchetti....ma gentoo per alcuni di essi è allo stesso livello di diebian

 

attualmente nessuna distro sta usando gcc 4.3 per il profilo stabile, quindi?

a dirla tutta, mi risulta che attualmente solo gentoo stia usando gcc 4.2.x come compilatore stabile, mentre tutte le altre sono ancora ferme a gcc4.1 o gcc4.0 (correggetemi se sbaglio), quindi di che ti lamenti scusi?

/EDIT: qui viene spiegato dalla stessa Intel che -march=prescott è l'alias corretto.

----------

## riverdragon

 *!equilibrium wrote:*   

> mi risulta che attualmente solo gentoo stia usando gcc 4.2.x come compilatore stabile, mentre tutte le altre sono ancora ferme a gcc4.1 o gcc4.0 (correggetemi se sbaglio)

 Gcc4.2 stabile su gentoo?   :Wink: 

----------

## comio

 *!equilibrium wrote:*   

> un sacco di cose

 

concordo con equilibrium su tutta la linea. Io cosiglio di leggersi il changelog di gcc (http://gcc.gnu.org/gcc-4.3/changes.html) e vedere se i cambiamenti giustificano il salto per adesso.

Sia chiaro io non sono uno di quelli che dice che "se non hai software stabile non ci ragiono con te", anzi io vivo perennemente di beta. La cosa che chiedo è di porsi questa domanda: "Se ho un problema sono in grado di fare una diagnosi vera per aiutare la soluzione dello stesso e lo sviluppo?" E' una domanda seria. Molti giovani, presi dalla sindrome Windows (dell'ultima versione ad ogni costo...) non si pongono mai il problema costo/beneficio.

In conclusione, io uso gcc.4.3.1 e non  ho avuto particolari problemi (tranne che su arch strane per lavoro... ma lì il discorso è diverso). Però occhio alle patch di regressione: Serious regressions

Ribadisco inoltre che per x86/amd64 il codice prodotto da gcc4.2 è praticamente lo stesso di quello prodotto 4.3.1 usano lo stesse opzioni (ricordandosi che i default di 4.2 != da 4.3)

ciao

i miei 2cents...

luigi

----------

## !equilibrium

 *riverdragon wrote:*   

> Gcc4.2 stabile su gentoo?  

 

hai ragione, mea culpa, sono troppo abituato con l'ambiente ~arch per AT.

----------

## federico

Guarda...

Per esperienza personale non ho notato particolari problemi col gcc 4.3.1, non diversi da quelli che avevo con gcc 4.2.4 quantomeno. L'unico pacchetto che non sono + in grado di compilare e' encfs, per il quale ci sono aperti gia' diversi bugs su bugs.gentoo.org e che spero sara' sistemato a breve.

Per come la vedo io non e' una follia, ma ti servira' la tua buona dose di avventura. Per quello che invece riguarda la velocita' non faccio testo, a me pare sempre tutto identico da sempre... (O meglio, credo che le variazioni di velocita' siano imputabile in minima parte al compilatore, ma baso questa mia teoria su cose non scientificamente dimostrabili)

Infine il pacchetto e' slotted, percui se proprio ti va male compilando qualocosa puoi sempre valutare la possibilita' di compilare col 4.2.4 o quello che hai.

----------

## !equilibrium

 *federico wrote:*   

> L'unico pacchetto che non sono + in grado di compilare e' encfs, per il quale ci sono aperti gia' diversi bugs su bugs.gentoo.org e che spero sara' sistemato a breve.

 

la stai facendo un po troppo semplice, questa è la situazione attuale dei bugs di gcc4.3:

https://bugs.gentoo.org/show_bug.cgi?id=198121

va considerato che:

1- gcc-4.3.0 non è ancora entrato nel portage ~arch e forse mai ci entrerà (quindi gli AT non hanno ancora testato *tutto* portage per verificare gcc-4.3;

2- gcc-4.3.1 è entrato da poco in ~arch e gli AT hanno appena iniziato a testare l'interno tree (ci vorrà molto tempo e ci si aspetta un x10 dell'attuale situazione di bugreport nell'immediato futuro);

 *federico wrote:*   

> Infine il pacchetto e' slotted, percui se proprio ti va male compilando qualocosa puoi sempre valutare la possibilita' di compilare col 4.2.4 o quello che hai.

 

il discorso fila se fai solo l'update del sistema con gcc-4.3.1, ma l'utente che ha iniziato questa discussione ha detto chiaramente di voler fare un "emerge -e world", quindi se qualcosa di critico del system si rovina, l'intera gentoo box è compromessa.

----------

## federico

So che la faccio semplice ma tu la metti piu' dura di quanto non sia, dalla pagina che hai linkato quasi tutti i bug sono stati gia' corretti, quelli che avanzano sono circa una 30ina. Sicuramente ne mancano e difetti collaterali ancora ce ne saranno parecchi da scovare pero' c'e' anche la possibilita' che installandoselo uno non incorra in problemi. Probabilmente si incontrano gia' piu' problemi ricompilandosi cosi' tutto il sistema, ma di quello non ho esperienza perche' non mi diverto molto a guardare scritte che passano sullo schermo per giorni  :Smile:  Fede

----------

