summaryrefslogtreecommitdiffstats
path: root/DOCS/Italian/gcc-2.96-3.0.html
blob: 42c56f9bb9b96ca9508d77bebdc682851e7a9cd4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
<HTML>
<BODY BGCOLOR=WHITE>
<FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>

<P>
<B>Domanda:</B> Cos'è il GCC 2.96 ? Non riesco a trovarlo sul sito GNU.
</P>

<P>
<B>Risposta:</B> Leggi la <A HREF="http://gcc.gnu.org/gcc-2.96.html">risposta ufficiale del team GNU GCC.</A>
</P>

<P>
<B>Domanda:</B> Qual'è il problema col GCC 2.96 ? E con il 3.x ?
</P>

<P>
<B>Risposta:</B>
</P>

<P>Leggi nella documentazione di MySQL :</P>

<P><I>
  Avviso per il compilatore: molti nostri utenti hanno segnalato crash casuali e
  corruzione delle tabelle con binari MySQL compilati con gcc due-punto-nove-sei su
  piattaforma Linux x86. Sebbene non riusciamo a riprodurre gli errori
  o capire le cause esatte, sospettiamo con un certo grado di sicurezza
  che il problema sia relativo al compilatore. Rimpiazzare il binario difettoso
  col nostro ha sempre eliminato il problema.
</I></P>

<P>
E per le persone, che periodicamente chiedono quali siano gli esatti problemi col
gcc 2.96, la mia risposta: <I>non lo sappiamo esattamente.</I>
Ci sono vari problemi/bug e ne saltano fuori periodicamente di nuovi.
<I>Non è un singolo problema/bug</I>. Noi vediamo solo varie segnalazioni di bug, soprattutto
bug interni al gcc, errori di sintassi nei sorgenti del compilatore o codice compilato male.
Questi sono tutti risolti usando una versione differente di gcc. Capisco che il gcc 2.96
ha diverse ottimizzazioni di default e che queste vadano in conflitto col nostro codice
asm, ma noi non possiamo correggerlo, e veramente non vogliamo in quanto
funziona con altri compilatori o verdioni di gcc, e la correzione può causare perdite di velocità.
</P>

<P>
Penso che il gcc 2.96 dovrebbe essere corretto per essere compatibile con le opzioni delle altre
versioni, ma i ragazzi della redhat si sono rifiutati di farlo. Se qualcuno è interessato - chieda
a Eugene K., l'autore di avifile, che ha avuto un lungo scambio di mail con loro, perchè aveva
gli stessi problemi con avifile. Alla fine lui ha modificato i sorgenti di avifile per
<I>aggirare</I> i bug del gcc 2.96...
Noi semplicemente non abbiamo l'interesse e il tempo di farlo.
</P>

<P>
Ah, e a proposito del bug pipe-in-comment: non era in realtà un nostro bug.
Ho parlato con uno dei mainteiner del gcc, e mi ha detto che il gcc 2.96 e 3.x
supporta la sintassi asm intel, e questo causava il problema. Ma <I>è</I> un bug,
perchè gcc <I>silenziosamente</I>, senza alcun avvertimento, ha ignorato l'intero blocco asm!
</P>

<P>
Altri problemi col gcc 3.x provengono dall'istallazione di libstdc++ difettoso o un header glibc (std_*.h).
Non sono un nostro errore. MPlayer compila e funziona bene con le versioni di
gcc 3.x. <B>Solo il 2.96 è difettoso</B>, ma dipende da molti elementi d'ambiente,
incluso il numero di release del gcc 2.96, le caratteristiche di mplayer abilitate, ecc.
<I>Se per te funziona usando il gcc 2.96, non significa che funzionerà per tutti.</I>
</P>

<P><B>Risposta 2:</B></P>

<P>
Leggi anche <A HREF="users_against_developers.html">questo</A> testo !!!</P>

<P>
<B>Domanda:</B> No! Sbagli! Funziona tutto col gcc 2.96 <I>tranne</I> MPlayer
</P>

<P>
<B>Risposta:</B>
</P>

<P>
No. Tu sbagli!
Molti progetti (soprattutto quelli che hanno nei sorgenti codice asm altamente ottimizzato)
hanno avuto problemi col gcc 2.96. Per esempio: avifile, MESA / DRI, Wine, ffmpeg, lame, NuppelVideo.
Ma altri progetti hanno già aggirato i bug gcc (hanno cambiato il codice che
scatenava i bug del compilatore) così per ora funzionano.
</P>

<P>
<B>Domanda:</B> No! Sbagli! Funziona tutto col gcc 2.96 <I>incluso</I> MPlayer
</P>

<P>
<B>Risposta:</B>
</P>

Bene. Sii felice. Ma sappi, dipende da molti elementi d'ambiente,
incluso il numero di release del gcc 2.96, le caratteristiche di mplayer abilitate, ecc.
<I>Se per te funziona usando il gcc 2.96, non significa che funzionerà per tutti!</I>
Significa solo che sei fortunato, finchè non scopri un problema. Ma non dimenticare la
<B>regola No.1 degli utenti gcc 2.96: MAI SEGNALARE BUG O PROBLEMI SE STAI USANDO IL GCC 2.96</B>

<P>
<B>Domanda:</B> Ok. Capito. Ma voglio provarlo... come posso compilare col gcc 2.96?
</P>

<P>
<B>Risposta:</B> Veramente? Sei sicuro? Ok. Sai... eccotelo: ./configure --disable-gcc-checking
</P>

<P>
<B>Domanda:</B> No! Non sono daccordo con te, perchè ...
</P>

<P>
<B>Risposta:</B> Non importa. Tieni i tuoi commenti per te. Non siamo interessati in storie sul gcc 2.96.
</P>


</FONT>
</BODY>
</HTML>