view DOCS/Polish/gcc-2.96-3.0.html @ 6420:370b50a47a18

Darwin/Mac OS X dvd support. Patch from Joey Parrish <joey@yunamusic.com>
author atmos4
date Thu, 13 Jun 2002 22:39:59 +0000
parents d5c692754cf2
children
line wrap: on
line source

<HTML>

<HEAD>
 <META http-equiv="content-type" content="text/html; charset=iso-8859-2">
</HEAD>

<BODY BGCOLOR=WHITE>
<FONT face="Verdana, Arial, Helvetica, sans-serif" size=2>

<P>
<B>Pytanie:</B> Co to jest GCC 2.96 ? Nie mogę tego znaleźć na stronie GNU.
</P>

<P>
<B>Odpowiedź:</B> Przeczytaj <A
HREF="http://gcc.gnu.org/gcc-2.96.html">oficjalną odpowiedź zespołu GNU
GCC.</A>
</P>

<P>
<B>Pytanie:</B> Jaki jest problem z GCC 2.96 ? I z X-ami 3.x ?
</P>

<P>
<B>Odpowiedź:</B>
</P>

<P>Przeczytaj w dokumentacji MySQL:</P>
<P><I> Wskazówki do kompilatora: Kilku z naszych użytkowników zgłosiło losowe
zwisy i uszkodzenie tablicy w binariach MySQL, kompilowanych z gcc
dwa-kropka-dziewięć-sześć na platformie x86 Linux. Chociaż nie byliśmy w stanie
zduplikować tego problemu sami, albo zrozumieć jego właściwej przyczyny,
podejrzewamy, że, z dużym stopniem prawdopodobieństwa, można powiązać ten
problem z kompilatorem. Zamieniając błędne binaria na nasze własne, zawsze
eliminowaliśmy ten problem.  </I></P>

<P>
A dla ludzi, którzy regularnie pytają, jakie są dokładnie problemy z gcc 2.96,
moja odpowiedź brzmi: <I>nie wiemy dokładnie.</I> Są różne problemy i coraz
nowe problemy i błędy pojawiają się okresowo.  Nie ma <I>jednego
błędu/problemu</I>. Dostajemy różne raporty o błędach, w większości są to
wewnętrzne błędy gcc, błędy składniowe kompilatora w źródłach bądź w źle
skompilowanym kodzie. Wszystkie one są rozwiązywane z użyciem innej wersji gcc.
Rozumiem, że gcc 2.96 ma inne domyślne flagi optymalizacji, które są w
konflikcie z naszym kodem asemblerowym inlline, ale my nie możemy tego zmienić,
a nawet nie chcemy poprawiać ich, skoro działają dobrze z innymi kompilatorami
lub innymi wersjami gcc, a poprawka mogłaby spowodować utratę szybkości
działania programu.
</P>

<P>
Myślę, żę gcc 2.96 powinien być poprawiony, tak by miał opcję zgodności z
innymi wydaniami, ale faceci z redhata odmówili zrobienia tego. Jeśli ktoś jest
zainteresowany - niech zapyta Eugene K., autora avifile, on wiele z nimi na ten
temat korespondował, ponieważ ten sam problem jest z avifile.  Ostatecznie
zmienił on źródła avifile tak, aby <I>obchodziły</I> błędy gcc 2.96...  My po
prostu nie mamy czsu ani nie jesteśmy zainteresowani robieniem tego.
</P>

<P>
A jeśli chodzi o błąd pipe-in-comment: to tak naprawdę nie jest nasz
błąd. Rozmawialiśmy z jednym z maintainerów gcc i on powiedział, że gcc 2.96 i
3.x wspierają składnię asemblera intela i to powoduje błąd pipe. Ale to
<I>jest</I> błąd, ponieważ gcc <I>po cichu</I>, bez żadnych ostrzeżeń,
ignorowało cały blok asemblerowych instrukcji!
</P>

<P> Inne problemy gcc 3.x pochodzą z błędnej instalacji nagłówków libstdc++ lub
glibc (std_*.h).  To nie jest nasza wina. MPlayer kompiluje się i pracuje
poprawnie z wersjami gcc 3.x. <B>Tylko 2.96 jest zepsute</B>, ale to zależy od
wielu elementów środowiska , włączając numer wydania gcc 2.96, włączone opcje
mplayera, itp.
<I>Jeśli wszystko działa u was, używających gcc 2.96, to nie znaczy, że będzie
działało u wszystkich.</I>
</P>

<P><B>Odpowiedź 2:</B></P>

<P>
Przeczytaj także <A HREF="users_against_developers.html">ten</A> tekst !!!</P>

<P>
<B>Pytanie:</B> Nie! Mylicie się! wszystko działa dobrze z gcc 2.96 <I>za
wyjątkiem</I> MPlayera.
</P>

<P>
<B>Odpowiedź:</B>
</P>

<P> Nie. To ty jesteś w błędzie!
Kilka projektów (przeważnie tych, które zawierają wysoko zoptymalizowany kod
inline asemblera) ma problemy z gcc 2.96. Na przykład: avifile, MESA / DRI,
Wine, ffmpeg, lame, NuppelVideo. Ale inne projekty już opracowały sposoby
radzenia sobie z błędami gcc (zmieniając kod, który wywoływał błędy
kompilatora), więc teraz działają dobrze. </P>

<P>
<B>Pytanie:</B> Nie! Mylicie się! Wszystko świetnie działa z gcc 2.96
<I>włącznie z</I> MPlayerem.
</P>

<P>
<B>Odpowiedź:</B>
</P>

Dobrze. Ciesz się. Ale musisz wiedzieć, że to jest uzaleznione od wielu
elementów środowiska, włącznie z numerem wydania gcc 2.96, włączonymi opcjami
mplayera, itp.
<I>Jeśli wszystko działa u cieibe, używającego gcc 2.96, to nie znaczy, że
będzie działało u wszystkich.</I>
To tylko oznacza, że masz szczęście, do chwili, gdzy znajdziesz problem. Ale
nie zapomnij:
<B>Zasada nr 1 użytkowników gcc 2.96: NIGDY NIE ZGŁASZAJ BŁĘDÓW, JEŚLI UŻYWASZ
GCC 2.96</B>

<P>
<B>Pytanie:</B> Ok. Zrozumiałem. Ale chcę spróbować i dowiedzieć się ... jak
skompilować mplayera z gcc 2.96?
</P>

<P>
<B>Odpowiedź:</B> Naprawdę? Jesteś pewien? Ok. Wiesz ... jest pewien sposób:
./configure --disable-gcc-checking
</P>

<P>
<B>Pytanie:</B> Nie! Nie zgadzam się z wami, ponieważ ...
</P>

<P>
<B>Odpowiedź:</B> To nie ma znaczenia. Zachowaj dla siebie swoje uwagi. Nie
jesteśmy zainteresowani opowieściami o gcc 2.96.
</P>


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