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
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Zgłaszanie błędów - MPlayer - Odtwarzacz Filmów dla
Linuksa</title>
<link rel="stylesheet" type="text/css" href="default.css">
<meta http-equiv="Content-Type" content=
"text/html; charset=iso-8859-2">
</head>
<body>
<h1><a name="appendix_b">Dodatek B - Jak zgłaszać
błędy</a></h1>
<p>Dobry raport o błędzie jest bardzo wartościowym wkładem w
rozwój każdego z projektów oprogramowania. Ale tak jak pisanie
dobrego oprogramowania, tak dobry raport problemu wymaga trochę
pracy. Prosimy, o zrozumienie, że większość programistów to
ludzie ekstremalnie zajęci i otrzymują nieprzyzwoitą ilość
e-maili. Więc, dopóki twoja reakcja jest decydująca w
poprawianiu MPlayera i bardzo doceniana, prosimy zrozum, że
musisz dostarczyć <b>wszystkie</b> informacje których wymagamy i
wykonać wszystkie polecenia zawarte w tym dokumencie.</p>
<h2><a name="fix">B.1 Jak naprawiać błędy</a></h2>
<p>Jeżeli czyjesz, że masz wystarczające umiejętności, jesteś
zaproszony do naprawienia błędu własnoręcznie. Może już to
zrobiłeś? Prosimy, przeczytaj <a href="tech/patches.txt">ten
krótki dokument</a> by dowiedzieć się, jak dodać twój kod do
MPlayera. Ludzie na grupie dyskusyjnej <a href=
"http://mplayerhq.hu/mailman/listinfo/mplayer-dev-eng">mplayer-dev-eng</a>
pomogą ci, jeżeli będziesz miał jakieś pytania.</p>
<h2><a name="report">B.2 Jak zgłaszać błędy</a></h2>
<p>Po pierwsze, wypróbuj najnowszą wersji MPlayera z CVSa,
możliwe że twój błąd został już tam naprawiony. Programiści
poruszają się naprawdę szybko, większość problemów z
oficjalnego wydania jest raportowane w przeciągu dni lub nawet
godzin, więc prosimy o używanie <b>tylko CVS</b> do
raportowania błędów. Instrukcję do CVS można znaleźć na dole <a
href="http://www.mplayerhq.hu/homepage/dload.html">tej
strony</a> lub w README. Jeżeli to nie pomogło, przeczytaj <a
href="documentation.html#known_bugs">listę znanych błędów</a> i
pozostałą część dokumentacji. Jeśli twój problem nie jest znany
lub nasze instrukcje nie rozwiązują problemu, wtedy prześlij
raport o błędzie.</p>
<p>prosimy o nie przesyłanie raportów o błędach bezpośrednio do
programistów. Pracujemy zbiorowo, tak więc wielu użytkowników
może się zainteresować tym problemem. Czasami inni użytkownicy,
mający doświadczenie z twoim kłopotem, wiedzą jak ominąć
problem, nawet jeżeli jest to błąd w kodzie MPlayera.</p>
<p>Prosimy, opisz swój problem możliwie najdokładniej. Wykonaj
małe dochodzenie by znaleźć okoliczności, w których problem się
pojawia. Może błąd pojawia się tylko w określonych sytuacjach?
Występuje ze pojedyńczym plikiem lub typem plików? Występuje
tylko z jednym kodekiem lub niezależnie od kodeka? Możesz
powtórzyć błąd ze wszystkimi sterownikami wyjścia? Im więcej
informacji dostarczysz, tym większe szanse na naprawienie
twojego problemu. Prosimy, nie zapomnij umieścić wymaganych
cennych informacji (patrz niżej), w przeciwnym wypadku, nie
będziemy w stanie poprawnie zdiagnozować twojego problemu.</p>
<p>Świetne i dobrze napisany poradnik zadawania pytań w
publicznych forach dyskusyjnych to <a href=
"http://www.tuxedo.org/~esr/faqs/smart-questions.html">How To
Ask Questions The Smart Way</a> (Jak Zadawać Pytania W Mądry
Sposób) autorstwa <a href="http://www.tuxedo.org/~esr/">Eric S.
Raymond</a>. Jest też inny nazwany <a href=
"http://www.chiark.greenend.org.uk/~sgtatham/bugs.html">How to
Report Bugs Effectively</a> (Jak Efektywnie Raportować Błędy)
autorstwa <a href=
"http://www.chiark.greenend.org.uk/~sgtatham/">Simon
Tatham</a>. artykuł w języku polskim to <a href=
"http://rtfm.bsdzine.org/">Jak mądrze zadawać pytania</a>
Jeżeli będziesz postępował zgodnie z tymi przewodnikami
powinieneś uzyskać pomoc. Ale zrozum, że my wszyscy odpowiadamy
na grupie dyskusyjnej w formie wolontariatu poświęcając nasz
wolny czas. Jesteśmy bardzo zajęci i nie możemy gwarantować, że
rozwiążemy twój problem, lub nawet odpowiemy na twój list.</p>
<h2><a name="where">B.3 Gdzie zgłaszać błędy</a></h2>
<p>Zapisz się na grupę dyskusyjną mplayer-users:<br>
<a href=
"http://mplayerhq.hu/mailman/listinfo/mplayer-users">http://mplayerhq.hu/mailman/listinfo/mplayer-users</a><br>
i wyślij swój raport o błędzie do:<br>
<a href=
"mailto:mplayer-users@mplayerhq.hu">mplayer-users@mplayerhq.hu</a></p>
<p>Językiem grupy jest <b>Angielski</b>. Prosimy o dostosowanie
się do standardu <a href=
"http://www.ietf.org/rfc/rfc1855.txt">Netiquette Guidelines</a>
i <b>nie wysyłać e-maili w HTML</b> do której kolwiek z naszych
grup dyskusyjnych. Zostaniesz po prostu zignorowany lub
zbanowany. Jeśli nie wiesz co to jest e-mail w HTML lub
dlaczego jest zły, przeczytaj ten <a href=
"http://expita.com/nomime.html">świetny dokument</a>. Wyjaśnia
wszystkie detale i daje instrukcje, jak wyłączyć HTML. Ponad to
zauważ, że nie będziemy odpowiadać indywidualnie CC
(carbon-copy), tak więc jest dobrym pomysłem zasubskrybować
grupę, by odebrać odpowiedź na swój list.</p>
<h2><a name="what">B.4 Co raportować</a></h2>
<p>Być może, że będziesz musiał załączyć plik log, konfigurację
lub próbkę pliku w swoim raporcie o błędzie. Jeżeli będzie on
dość spory, wtedy lepiej będzie, gdy prześlesz go na nasz <a
href="ftp://mplayerhq.hu/MPlayer/incoming/">serwer FTP</a> w
skompresowanym formacie (preferowany gzip i bzip2) i dołącz
tylko ścieżkę i nazwę pliku do twojego raportu o błędzie. Nasze
grupa dyskusyjna ma ograniczeni rozmiaru wiadomości na 80k,
jeżeli masz coś większego, musisz to skompresować lub wysłać na
serwer.</p>
<h3><a name="system">B.4.1 Informacje o systemie</a></h3>
<ul>
<li>
Twoja dystrybcje Linuksa lub system operacyjny i wersja
np.:
<ul>
<li>Red Hat 7.1</li>
<li>Slackware 7.0 + devel packs from 7.1 ...</li>
</ul>
</li>
<li>wersja kernela:<br>
<code>uname -a</code></li>
<li>wersja libc:<br>
<code>ls -l /lib/libc[.-]*</code></li>
<li>wersja X:<br>
<code>X -version</code></li>
<li>wersje gcc i ld:<br>
<code>gcc -v<br>
ld -v</code></li>
<li>wersja binutils:<br>
<code>as --version</code></li>
<li>
Jeśli masz problemy z trybem pełnoekranowym:
<ul>
<li>Typ i wersja menedżera okien</li>
</ul>
</li>
<li>
Jeśli masz problemy z XVIDIX:
<ul>
<li>głębia kolorów w X:<br>
<code>xdpyinfo | grep "depth of root"</code></li>
</ul>
</li>
<li>
Jeżeli tylko GUI jest z błędem:
<ul>
<li>wersja GTK</li>
<li>wersja GLIB</li>
<li>wersja libpng</li>
<li>sytuacja GUI, w której błąd wystąpił</li>
</ul>
</li>
</ul>
<h3><a name="hardware">B.4.2 Sprzęt i sterowniki</a></h3>
<ul>
<li>Informacja o CPU (działa tylko z Linuksem):<br>
<code>cat /proc/cpuinfo</code></li>
<li>
Producent i model karty graficznej, np.:
<ul>
<li>ASUS V3800U chip: nVidia TNT2 Ultra pro 32MB
SDRAM</li>
<li>Matrox G400 DH 32MB SGRAM</li>
</ul>
</li>
<li>
Typ sterownika wideo & wersja, np.:
<ul>
<li>wbudowany sterownik X</li>
<li>nVidia 0.9.623</li>
<li>Utah-GLX CVS 2001-02-17</li>
<li>DRI z X 4.0.3</li>
</ul>
</li>
<li>
Typ karty dźwiękowej & sterownik, np.:
<ul>
<li>Creative SBLive! Gold ze sterownikiem OSS z
oss.creative.com</li>
<li>Creative SB16 ze sterownikiem OSS z kernela</li>
<li>GUS PnP z emulacją OSSw ALSA</li>
</ul>
</li>
<li>W razie wątpliwości dołącz wyjście z <code>lspci
-vv</code> w systemie Linux.</li>
</ul>
<h3><a name="compilation">B.4.3 Problemy z kompilacją</a></h3>
Prosimy o dołączenie tych plików:
<ul>
<li><code>config.h</code></li>
<li><code>config.mak</code></li>
</ul>
Tylko jeżeli kompilacja nie powodzi się w jednym z tych
katalogów, dołącz te pliki:
<ul>
<li><code>Gui/config.mak</code></li>
<li><code>libvo/config.mak</code></li>
<li><code>libao2/config.mak</code></li>
</ul>
<h3><a name="configure">B.4.4 Problemy z configure</a></h3>
Dołącz <code>configure.log</code>.
<h3><a name="playback">B.4.5 Problemy z odtwarzaniem</a></h3>
<p>Prosimy, dołącz wyjście MPlayera za 1 poziomie
gadatliwości, ale pamiętaj <b>nie przycinaj wyjścia</b>
podczas wklejania go do twojego listu. Programiści potrzebują
wszystkich komunikatów by poprawnie zdiagnozować problem.
Możesz przekierować wyjście do pliku komendą podobną do:</p>
<p><code> mplayer -v [opcje] [nazwa_pliku] > mplayer.log
2>&1</code></p>
<p>Jeżeli twój problem jest specyficzny dla jednego lub więcej
plików, wtedy prześlij go (je) na:</p>
<p> <a href=
"ftp://mplayerhq.hu/MPlayer/incoming/">ftp://mplayerhq.hu/MPlayer/incoming/</a></p>
<p>Ponad to prześlij mały plik tekstowy zawierający tę samą
nazwę podstawową co twój plik, tyle że z rozszerzeniem .txt.
Opisz problem który występuje z danym plikiem i dołącz twój
adres e-mail i najlepiej jeszcze wyjście MPlayera na 1 poziomie
gadatliwości. Zazwyczaj pierwsze 1-5 MB pliku wystarcza na
odtworzenie problemu, ale dla pewności prosimy cię o:</p>
<p><code> dd if=twój_plik of=mały_plik bs=1024k
count=5</code></p>
<p>Wytnie to pierwsze pięć megabajtów z
<strong>'twój_plik'</strong> i zapisze to do
<strong>'mały_plik'</strong>. Potem wypróbuj mały plik, jeżeli
błąd dalej się pojawia, próbka jest dla nas wystarczająca.
Prosimy, <strong>nigdy</strong> nie wysyłaj takich plików przez
e-mail! Wyślij na serwer, i podaj tylko ścieżkę/nazwę pliku na
serwerze FTP. Jeśli plik jest dostępny przez Internet, wysłany
<strong>dokładny</strong> URL jest wystarczający.</p>
<h3><a name="crash">B.4.6 Wywalenie się programu (ang.
crashe)</a></h3>
<p>Musisz uruchomić MPlayera wewnątrz <code>gdb</code> i wysłać
nam kompletne wyjście lub jeżeli masz zrzut rdzenia (ang. core
dump) po wywaleniu się, możesz wyciągnąć użyteczne informacje z
pliku <code>Core</code>. Poniżej pokazano jak:</p>
<h4><a name="debug">B.4.6.1 Jak przechować informacje
powtarzalnym wywaleniu się</a></h4>
Przekompiluj MPlayera z włączoną obsługą debugowania:
<p><code> ./configure --enable-debug=3<br>
make</code></p>
i uruchom MPlayer wewnątrz db używając:
<p><code> gdb ./mplayer</code></p>
Jesteś teraz w gdb. Wpisz:
<p><code> run -v [opcje_dla_MPlayera] nazwa_pliku</code></p>
i powtórz "wywałkę". Wkrótce po tym jak to zrobisz, gdb zwróci
ci dostęp do linii komend gdzie musisz wprowadzić
<p><code> bt<br>
disass $pc-32 $pc+32<br>
info all-registers</code></p>
<h4><a name="core">B.4.6.2 Jak wydobyć sensowne informacje z
zrzutu rdzenia (ang. core dump)</a></h4>
<p>Prosimy, stwórz podany plik rozkazowy (skrypt):</p>
<p><code>disass $pc-32 $pc+32<br>
info all-registers</code></p>
<p>Potem po prostu uruchom podaną komendę:</p>
<p> <code>gdb mplayer --core=core -batch
--command=command_file > mplayer.bug</code></p>
<h2><a name="advusers">B.5 Wiem co robię...</a></h2>
<p>Jeśli stworzyłeś poprawny raport o błędzie, postępując
zgodnie z podanymi wskazówkami oraz jesteś pewien, że to błąd
MPlayera, nie kompilatora, czy zepsutego pliku, przeczytałeś
dokumentację i nadal nie znalazłeś rozwiązania, a twoje
sterowniki karty dźwiękowej są w porządku, wówczas możesz
zasubskrybować listę dyskusyjną mplayer-advusers i wysłać swój
raport, aby dostać szybszą i lepszą odpowiedź.<br>
<br>
Prosimy o rozwagę. bo jeżeli wyślesz pytanie w stylu
początkującego lub pytanie na które jest odpowiedź w manualu,
wtedy zostaniesz zignorowany lub obrażony zamiast otrzymania
właściwej odpowiedzi.<br>
Więc nie obrażaj nas i zasubskrybuj -advusers tylko jeżeli
naprawdę wiesz co robisz i czyjesz się jakbyś był zaawansowanym
użytkownikiem MPlayera lub programistą. Jeżeli spełniasz te
kryteria, nie powinno być dla ciebie kłopotem znalezienie
sposobu, jak się zasubskrybować..</p>
</body>
</html>
|