11396
|
1 <?xml version="1.0" encoding="iso-8859-2"?>
|
|
2 <!-- synced with 1.9 -->
|
|
3 <appendix id="users-vs-dev">
|
|
4 <title>Developerzy wyrywają sobie włosy</title>
|
|
5
|
|
6 <sect1 id="gcc-296">
|
|
7 <title>GCC 2.96</title>
|
|
8
|
|
9 <formalpara>
|
|
10 <title>Zarys historyczny:</title>
|
|
11 <para>
|
|
12 GCC z serii <emphasis role="bold">2.95</emphasis> jest oficjalnym wydaniem GNU,
|
|
13 a jego wersja 2.95.3 jest najbardziej wolna od błędów. Nigdy nie odnotowaliśmy
|
|
14 problemów przy kompilacji, które moglibyśmy przypisać gcc-2.95.3. Zaczynając od
|
|
15 Red Hat Linuksa 7.0, <emphasis role="bold">Red Hat</emphasis> dołączył poważnie
|
|
16 zmodyfikowaną wersję CVS GCC do swojej dystrybucji i nazwał ją
|
|
17 <emphasis role="bold">2.96</emphasis>. Stało się tak, ponieważ GCC 3.0
|
|
18 nie było jeszcze ukończone, a potrzebowano kompilatora, który współdziałałby dobrze
|
|
19 z wszystkimi platformami jakie były obsługiwane, włączając w to IA64 i
|
|
20 s390. Dystrybutor <emphasis role="bold">Mandrake</emphasis> również poszedł w ślady
|
|
21 Red Hata i zaczął dołączać GCC 2.96 do serii Linux-Mandrake 8.0.
|
|
22 </para>
|
|
23 </formalpara>
|
|
24
|
|
25 <formalpara>
|
|
26 <title>Oświadczenie:</title>
|
|
27 <para>
|
|
28 Zespół GCC wyparł się jakichkolwiek powiązań z GCC 2.96 i wystosował
|
|
29 <ulink url="http://gcc.gnu.org/gcc-2.96.html">oficjalną odpowiedź</ulink>
|
11451
|
30 na GCC 2.96. Wielu developerów ze świata zaczęło mieć problemy z tym kompilatorem
|
11396
|
31 i zarekomendowali inne. Przykładami są
|
|
32 <ulink url="http://www.mysql.com/downloads/mysql-3.23.html">MySQL</ulink>
|
|
33 i
|
|
34 <ulink url="http://avifile.sourceforge.net/news-old1.htm">avifile</ulink>.
|
|
35 Inne, interesujące linki:
|
|
36 <ulink url="http://www.atnf.csiro.au/people/rgooch/linux/docs/kernel-newsflash.html">
|
|
37 Krótka wiadomość o jądrze 2.4.17</ulink>
|
|
38 i
|
|
39 <ulink url="http://www.voy.com/3516/572.html">Forum Voy</ulink>.
|
|
40 <application>MPlayer</application> ucierpiał również z powodu okresowych
|
|
41 problemów, które zostały rozwiązane przez przesiadkę na inną wersję GCC. Kilka
|
|
42 projektów rozpoczęło implementację obejść dla pewnych spraw związanych z 2.96,
|
|
43 ale my postanowiliśmy nie naprawiać błędów innych, szczególnie jeżeli niektóre
|
|
44 obejścia mogą ujemnie wpływać na wydajność.
|
|
45 </para>
|
|
46 </formalpara>
|
|
47
|
|
48 <para>
|
|
49 GCC 2.96 nie pozwala na użycie symbolu <literal>|</literal> (pipe - potok) w
|
|
50 komentarzu assemblera, ponieważ obsługuje zarówno składnię Intela jak i AT&T,
|
|
51 a symbol <literal>|</literal> jest stosowany w wariancie Intela. Problem leży w fakcie, że
|
|
52 <emphasis>cicho</emphasis> ignoruje on cały blok assemblera. Rzekomo
|
|
53 zostało to już naprawione i GCC wyświetla ostrzeżenie zamiast pomijania tego bloku.
|
|
54 </para>
|
|
55
|
|
56 <formalpara>
|
|
57 <title>Teraźniejszość:</title>
|
|
58 <para>
|
|
59 Red Hat twierdzi, że GCC 2.96-85 i kolejne zostały już poprawione. Sytuacja, w rzeczy samej,
|
|
60 poprawiła się, ciągle jednak dostajemy raporty o błędach na nasze listy mailingowe, które znikają
|
|
61 wraz z przejściem na inny kompilator. W każdym bądź razie, nie ma to już znaczenia.
|
|
62 Mamy nadzieję, że dojrzewające GCC 3.x na dobre zakończy tę sprawę. Jeżeli chcesz
|
|
63 kompilować z 2.96, przekaż flagę <option>--disable-gcc-checking</option>
|
|
64 skryptowi <filename>configure</filename>. Pamiętaj, że możesz wtedy liczyć tylko na siebie i
|
11451
|
65 <emphasis role="bold">nie zgłaszaj żadnych błędów</emphasis>. Jeżeli to zrobisz, zostanie
|
11396
|
66 odebrany Ci dostęp do naszej listy mailingowej, ponieważ mamy już więcej niż dość bezsensownych kłótni
|
|
67 na temat GCC 2.96. Proszę, zostaw tę sprawę w spokoju.
|
|
68 </para>
|
|
69 </formalpara>
|
|
70
|
|
71
|
|
72 <para>
|
|
73 Jeżeli masz problemy z GCC 2.96, możesz pobrać paczki 2.96-85
|
|
74 z <ulink url="ftp://updates.redhat.com">serwera ftp</ulink> Red Hat lub
|
|
75 skorzystać z pakietów 3.0.4, oferowanych z wersją 7.2 i kolejnymi. Możesz również ściągnąć
|
|
76 <ulink url="ftp://people.redhat.com/jakub/gcc/3.2.3-11/">pakiety gcc-3.2.3-11</ulink>
|
|
77 (nieoficjalne, ale działają dobrze)
|
|
78 i zainstalować je razem z gcc-2.96, które już masz. MPlayer wykryje
|
|
79 je i użyje 3.2 zamiast 2.96. Jeżeli nie chcesz albo nie możesz użyć binarnych
|
|
80 paczek, poniżej znajdziesz informacje, jak skompilować GCC 3 ze źródeł:
|
|
81 </para>
|
|
82
|
|
83 <procedure>
|
|
84 <step><para>
|
|
85 Wejdź na stronę
|
|
86 z <ulink url="http://gcc.gnu.org/mirrors.html">serwerami lustrzanymi GCC</ulink>
|
|
87 i ściągnij <filename>gcc-core-<replaceable>XXX</replaceable>.tar.gz</filename>,
|
|
88 gdzie <replaceable>XXX</replaceable> to numer wersji. W pliku znajduje się
|
|
89 kompletny kompilator C, który wystarczy dla <application>MPlayera</application>.
|
|
90 Jeżeli chcesz również C++, Java albo inne z zaawansowanych możliwości GCC,
|
|
91 <filename>gcc-<replaceable>XXX</replaceable>.tar.gz</filename> może bardziej
|
|
92 pasować do twoich potrzeb.
|
|
93 </para></step>
|
|
94 <step><para>
|
|
95 Rozpakuj archiwum, wykonując
|
|
96 <screen>tar -xvzf gcc-core-<replaceable>XXX</replaceable>.tar.gz</screen>
|
|
97 </para></step>
|
|
98 <step><para>
|
|
99 GCC nie jest budowane w katalogu źródłowym, jak większość programów,
|
|
100 ale potrzebuje katalogu kompilacji poza katalogiem ze źródłami. Będziesz musiał
|
|
101 stworzyć katalog przez
|
|
102 <screen>mkdir gcc-build</screen>
|
|
103 </para></step>
|
|
104 <step><para>
|
|
105 Dalej możesz przejść do procedury konfiguracyjnej i katalogu budowy, ale
|
|
106 musisz skonfigurować z katalogu źródłowego:
|
|
107 <screen>
|
|
108 cd gcc-build
|
|
109 ../gcc-3.<replaceable>XXX</replaceable>/configure</screen>
|
|
110 </para></step>
|
|
111 <step><para>
|
|
112 Skompiluj GCC, wykonując tę komendę w katalogu kompilacji:
|
|
113 <screen>make bootstrap</screen>
|
|
114 </para></step>
|
|
115 <step><para>
|
|
116 Teraz możesz zainstalować GCC (jako superużytkownik), wpisując
|
|
117 <screen>make install</screen>
|
|
118 </para></step>
|
|
119 </procedure>
|
|
120 </sect1>
|
|
121
|
|
122
|
|
123 <sect1 id="mplayer-binary">
|
|
124 <title>Dystrybucja binariów</title>
|
|
125
|
|
126 <para>
|
|
127 <application>MPlayer</application> zawierał wcześniej źródło projektu
|
|
128 OpenDivX, który zabrania redystrybucji binariów. Kod ten został usunięty w wersji
|
|
129 0.90-pre1, a pozostawiony plik <filename>divx_vbr.c</filename>, który pochodzi ze źródeł
|
|
130 OpenDivX, został objęty licencją GPL przez jego autorów w wersji 0.90pre9.
|
|
131 Możesz teraz, bez obaw, tworzyć pakiety binarne.
|
|
132 </para>
|
|
133
|
|
134 <para>
|
|
135 Kolejną przeszkodą przy redystrybucji binariów była optymalizacja dla konkretnej
|
|
136 architektury CPU podczas kompilacji. <application>MPlayer</application> obsługuje
|
|
137 wykrywanie CPU podczas uruchamiania (podaj opcję
|
|
138 <option>--enable-runtime-cpudetection</option> dla skryptu <command>configure</command>).
|
|
139 Jest domyślnie wyłączona, ponieważ wymaga poświęcenia małej części mocy obliczeniowej procesora.
|
|
140 Jednak możliwe jest teraz tworzenie binariów, które będą działały na różnych typach
|
|
141 procesorów Intela.
|
|
142 </para>
|
|
143 </sect1>
|
|
144
|
|
145
|
|
146 <sect1 id="nvidia-opinions">
|
|
147 <title>nVidia</title>
|
|
148
|
|
149 <para>
|
|
150 Nie podoba nam się fakt, że <ulink url="http://www.nvidia.com">nVidia</ulink>
|
|
151 dostarcza wyłącznie sterowniki binarne (dla XFree86), które często zawierają błędy.
|
|
152 Dostaliśmy wiele zgłoszeń na
|
|
153 <ulink url="http://mplayerhq.hu/pipermail/mplayer-users/">mplayer-users</ulink>
|
|
154 o ich błędach, marnej jakości, braku stabilności oraz
|
11451
|
155 słabym wsparciu dla użytkownika i eksperta.
|
11396
|
156 Wiele z tych problemów/kwestii pojawia się ciągle. nVidia skontaktowała się
|
|
157 z nami ostatnio i stwierdziła, że te błędy nie istnieją, a brak stabilności
|
|
158 jest podyktowany wadliwymi chipami AGP, nie otrzymali również żadnych zgłoszeń
|
|
159 o błędach w sterowniku (takich, jak purpurowa linia). Jeżeli masz problem ze swoją kartą
|
|
160 nVidia, doradzana jest Ci instalacja najnowszej wersji sterowników nVidia i/lub
|
|
161 kupno nowej płyty głównej lub poproszenie o otwarte sterowniki. W każdym bądź razie,
|
|
162 jeżeli używasz sterowników binarnych nVidia i stajesz przed problemami z nimi związanymi,
|
|
163 bądź świadom, że nie otrzymasz zbyt dużej pomocy z naszej strony, ponieważ nie mamy
|
|
164 dużej możliwości jej udzielenia.
|
|
165 </para>
|
|
166 </sect1>
|
|
167
|
|
168
|
|
169 <sect1 id="joe-barr">
|
|
170 <title>Joe Barr</title>
|
|
171
|
|
172
|
|
173 <para>
|
|
174 Joe Barr stał się mało popularny w grudniu 2001, pisząc mniej niż pochlebną
|
|
175 recenzję <application>MPlayera</application> zatytułowaną
|
|
176 <ulink url="http://www.linuxworld.com/story/32880.htm">MPlayer: Projekt z piekła rodem</ulink>.
|
|
177 Miał problemy z jego instalacją. Stwierdził również, że developerzy byli mało przyjaźni,
|
|
178 a dokumentacja niekompletna i ubliżająca. Sam oceń.
|
|
179 Dalej, negatywnie wspomniał o Arpi'm w swoich
|
|
180 <ulink url="http://www.linuxworld.com/story/32887.htm">10 prognozach dla Linuksa
|
|
181 na rok 2002</ulink>.
|
|
182 W podobnej recenzji xine zatytułowanej
|
|
183 <ulink url="http://www.linuxworld.com/story/32716.htm">Strumieniowy odtwarzacz mediów dla reszty z nas</ulink>
|
|
184 ciągle wzbudzał kontrowersje. Jak na ironię, pod koniec swojego artykułu cytuje
|
11451
|
185 krótką wymianę zdań między nim a Günterem Bartschem, twórcą <application>xine</application>,
|
11396
|
186 która idealnie podsumowuje całą sprawę:
|
|
187
|
|
188 <blockquote><para>
|
|
189 Jednakże, mówił dalej, że był "zdziwiony" moją kolumną o
|
|
190 <application>MPlayerze</application> i mówił mi, że to niesprawiedliwe, przypominając, że
|
|
191 jest to projekt wolnego oprogramowania. "Jeśli Ci się nie podoba," powiedział Bartsch, "nie ma przeszkód, żebyś
|
|
192 go nie używał."
|
|
193 </para></blockquote>
|
|
194 Prawie 2 lata później w październiku 2003 napisał kolejną recenzję zatytułowaną
|
|
195 <ulink url="http://www.newsforge.com/article.pl?sid=03/10/02/0343200">Mplayer raz jeszcze</ulink>.
|
|
196 Zawarty jest w niej następujący wniosek:
|
|
197
|
|
198 <blockquote><para>
|
|
199 Muszę przyznać, że znacznie zwiększyła się liczba możliwości, poprawiła się wydajność
|
|
200 i dokumentacja. Ciągle instalacja nie jest najłatwiejsza na świecie, szczególnie
|
|
201 dla początkujących, ale jest trochę lepiej niż było.
|
|
202 </para></blockquote>
|
|
203
|
|
204 i
|
|
205
|
|
206 <blockquote><para>
|
|
207 Ale co najważniejsze, nie dochodzą do mnie komentarze o oburzeniu użytkowników.
|
|
208 Myślę, że należy mi się za to uznanie, nawet jeżeli sobie tak wmawiam.
|
|
209 Arpi i reszta zespołu pracującego nad projektem muszą czuć to samo, ponieważ
|
|
210 zatroszczyli się i wspomnieli o mnie w specjalnym rozdziale ich dokumentacji
|
|
211 załączonej w pliku tar. Jak mówiłem na początku, niektóre rzeczy się nie
|
|
212 zmieniają.
|
|
213 </para></blockquote>
|
|
214
|
|
215 Nie możemy sprecyzować naszego stanowiska wobec Joe Barr'a lepiej:
|
|
216 "Ciągle nie jest to najuczciwszy i najlepiej opracowany artykuł
|
|
217 na świecie, ale jest lepszy niż kiedyś." Mamy nadzieję, że kiedyś przypadniemy
|
|
218 sobie do gustu. Jednak uznanie za dojrzałość, możemy tylko przypisać starzeniu się
|
|
219 i po części zmęczeniu bezsensownymi kłótniami.
|
|
220 </para>
|
|
221 </sect1>
|
|
222 </appendix>
|