view DOCS/Italian/gcc-2.96-3.0.html @ 5862:e03dc14d3f2f

Runtime cpu detection is disabled by default.
author ksorim
date Sat, 27 Apr 2002 12:25:48 +0000
parents 70264cc9ade0
children
line wrap: on
line source

<HTML>

<HEAD>
<STYLE>
	.text
		{font-family	:	Verdana, Arial, Helvetica, sans-serif;
		font-size	:	14px;}
</STYLE>
</HEAD>

<BODY BGCOLOR=WHITE>
<FONT CLASS="text">

<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 la versione di
gcc 2.95.3(<B>MEncoder</B> non funziona col 2.95.2 perchè questo compila male
alcune istruzioni MMX). <B>Il 2.96 e il 3.0.x sono difettosi</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, MySQL.
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>