14697
|
1 <?xml version="1.0" encoding="iso-8859-2"?>
|
17074
|
2 <!-- Synced with: 1.12 -->
|
14697
|
3 <appendix id="bugreports">
|
|
4 <title>Jak hlásit chyby</title>
|
|
5 <para>
|
|
6 Dobrá hlášení chyb jsou velmi cenným příspěvkem do vývoje jakéhokoli
|
|
7 softwarového projektu. Ale je to s nimi jako se psaním dobrého
|
|
8 programu, sepsání dobrého hlášení problému vyžaduje trochu práce.
|
|
9 Prosím berte na vědomí, že většina vývojářů je velmi zaneprázdněna a
|
|
10 dostává kvanta e-mailů. Takže ačkoli je vaše zpětná vazba kritická pro
|
|
11 vylepšování <application>MPlayer</application>u a velmi ceněná, prosíme
|
|
12 pochopte, že musíte poskytnout <emphasis role="bold">veškeré</emphasis>
|
|
13 informace které požadujeme a postupovat přesně podle instrukcí v tomto
|
|
14 dokumentu.
|
|
15 </para>
|
|
16 <sect1 id="bugreports_fix">
|
|
17 <title>Jak napravovat chyby</title>
|
|
18 <para>
|
|
19 Pokud si myslíte, že máte potřebné schopnosti, pak vás vybízíme abyste
|
|
20 opravil(a) chybu samostatně. Nebo jste to již udělal(a)? Přečtěte si prosím
|
|
21 <ulink url="../../tech/patches.txt">tento krátký dokument</ulink>, abyste se
|
|
22 dozvěděli jak zahrnout váš kód do <application>MPlayer</application>u.
|
|
23 Lidé z konference
|
15373
|
24 <ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-dev-eng">MPlayer-dev-eng</ulink>
|
14697
|
25 vám pomohou, pokud budete mít otázky.
|
|
26 </para>
|
|
27 </sect1>
|
17074
|
28 <sect1 id="bugreports_regression_test">
|
|
29 <title>Jak provádět regresní testování pomocí CVS</title>
|
|
30 <para>
|
|
31 Občas nastane problém typu 'předtím to fungovalo, teď už ne...'.
|
|
32 Zde přinášíme postup krok za krokem, jak vyhledat, kdy problém
|
|
33 nastal. Toto <emphasis role="bold">není</emphasis> určeno příležitostným
|
|
34 uživatelům.
|
|
35 </para>
|
|
36 <para>
|
|
37 Nejprve si musíte opatřit zdrojové kódy MPlayeru z CVS.
|
|
38 Instrukce lze nalést na konci
|
|
39 <ulink url="http://www.mplayerhq.hu/homepage/dload.html">této stránky</ulink>.
|
|
40 </para>
|
|
41 <para>
|
|
42 Tak dostanete v adresáři main/ obraz CVS stromu na straně klienta.
|
|
43 Nyní aktualizujte tento obraz k datu, které chcete:
|
|
44 <screen>
|
|
45 cd main/
|
|
46 cvs update -PAd -D "2004-08-23"
|
|
47 </screen>
|
|
48 Formát data je YYYY-MM-DD HH:MM:SS.
|
|
49 Požití tohoto datového formátu zajišťuje, že budete schopni extrahovat
|
|
50 patche podle data, kdy byly zapsány (commit) stejně, jak jsou v
|
|
51 <ulink url="http://mplayerhq.hu/pipermail/mplayer-cvslog/">MPlayer-cvslog archivu</ulink>.
|
|
52 </para>
|
|
53 <para>
|
|
54 A teď proveďte sestavení jako při normální aktualizaci:
|
|
55 <screen>
|
|
56 ./configure
|
|
57 make
|
|
58 </screen>
|
|
59 </para>
|
|
60 <para>
|
|
61 Pokud to čte nějaký neprogramátor, nejrychlejší metodou, jak se dostat
|
|
62 k bodu, kde problém nastal, je použití binárního vyhledávání – to je
|
|
63 vyhledávání data poruchy opakovaným dělením vyhledávacího intervalu napůl.
|
|
64 Například pokud problém nastal v 2003, začneme v polovině roku a ptáme se,
|
|
65 "Už je tu problém?".
|
|
66 Pokud ano, vraťte se na prvního dubna; pokud ne, běžte na prvního října
|
|
67 a tak dále.
|
|
68 </para>
|
|
69 <para>
|
|
70 Pokud máte spoustu místa na disku (plná kompilace obvykle zabírá 100 MB
|
|
71 a kolem 300–350 MB, pokud jsou zapnuty debugovací symboly), zkopírujte
|
|
72 nejstarší známou funkční verzi před jejím updatem; to vám ušetří čas,
|
|
73 pokud se budete vracet.
|
|
74 (Obvykla je nutné spustit 'make distclean' před rekompilací starší verze,
|
|
75 takže pokud si neuděláte záložní kopii originálního zdrojového stromu,
|
|
76 budete v něm muset rekompilovat vše, až se vrátíte do současnosti.)
|
|
77 </para>
|
|
78 <para>
|
|
79 Pokud jste našli den, kdy k problému došlo, pokračujte v hledání pomocí
|
|
80 archivu mplayer-cvslog (řazeného podle data) a preciznějším cvs update
|
|
81 s uvedením hodiny, minuty a sekundy:
|
|
82 <screen>
|
|
83 cvs update -PAd -D "2004-08-23 15:17:25"
|
|
84 </screen>
|
|
85 To vám umožní lehce najít patch, který problém způsobil.
|
|
86 </para>
|
|
87 <para>
|
|
88 Pokud jste našli patch, který je příčinou problému, máte téměř vyhráno;
|
|
89 ohlaste to do
|
|
90 <ulink url="http://bugzilla.mplayerhq.hu/">MPlayer Bugzilly</ulink> nebo
|
|
91 se přihlaste do
|
|
92 <ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-users">MPlayer-users</ulink>
|
|
93 a pošlete to tam.
|
|
94 Je šance, že autor navrhne opravu.
|
|
95 Rovněž si můžete patch rozpitvat, dokud z něj nevytlučete, kde je chyba :-).
|
|
96 </para>
|
|
97 </sect1>
|
14697
|
98 <sect1 id="bugreports_report">
|
|
99 <title>Jak oznamovat chyby</title>
|
|
100 <para>
|
|
101 Nejprve, prosím, vyzkoušejte poslední CVS verzi
|
|
102 <application>MPlayer</application>u, jelikož vaše chyba již mohla být
|
|
103 odstraněna. Vývoj je velmi rychlý, většina chyb v oficiálních balíčcích je
|
|
104 nahlášena během několika dnů, nebo dokonce hodin, takže prosím používejte
|
|
105 <emphasis role="bold">pouze CVS</emphasis> pro hlášení chyb. To zahrnuje binární
|
|
106 balíčky <application>MPlayer</application>u. CVS instrukce naleznete na konci
|
|
107 <ulink url="http://www.mplayerhq.hu/homepage/dload.html">této stránky</ulink>,
|
|
108 nebo v souboru README. Pokud to nepomůže, prostudujte si prosím seznam
|
|
109 <link linkend="bugs">známých chyb</link> a zbytek dokumentace. Pokud je váš
|
|
110 problém neznámý nebo jej nelze řešit pomocí našich instrukcí pak jej nahlaste
|
|
111 jako chybu.
|
|
112 </para>
|
|
113
|
|
114 <para>
|
|
115 Prosíme, neposílejte hlášení chyb soukromě jednotlivým vývojářům. Toto je týmová
|
|
116 práce a proto se o ně může zajímat více lidí. Čas od času měli ostatní uživatelé
|
|
117 stejný problém a vědí jak jej obejít, dokonce i když se jedná o chybu v kódu
|
|
118 <application>MPlayer</application>u.
|
|
119 </para>
|
|
120
|
|
121 <para>
|
|
122 Prosíme popište svůj problém tak podrobně, jak je to jen možné. Proveďte malé
|
|
123 pátrání po okolnostech za kterých problém nastává. Projevuje se ta chyba jen
|
|
124 v určitých situacích? Je vlastní určitým souborům nebo typům souborů? Stává se
|
|
125 pouze s jedním kodekem, nebo je nezávislá na použitém kodeku? Dokážete ji
|
|
126 zopakovat se všemi výstupními rozhraními nebo ovladači?
|
|
127 Čím více nám poskytnete informací, tím je větší šance na odstranění problému.
|
|
128 Nezapomeňte také připojit hodnotné informace požadované níže, jinak nebudeme
|
|
129 schopni stanovit příčinu problému.
|
|
130 </para>
|
|
131
|
|
132 <para>
|
|
133 Skvělá, dobře napsaná příručka jak se ptát ve veřejných konferencích je
|
|
134 <ulink url="http://www.catb.org/~esr/faqs/smart-questions.html">How To Ask
|
|
135 Questions The Smart Way</ulink> od
|
|
136 <ulink url="http://www.catb.org/~esr/">Erica S. Raymonda</ulink>.
|
|
137 Další příručka je
|
|
138 <ulink url="http://www.chiark.greenend.org.uk/~sgtatham/bugs.html">How to Report
|
|
139 Bugs Effectively</ulink> od
|
|
140 <ulink url="http://www.chiark.greenend.org.uk/~sgtatham/">Simona Tathama</ulink>.
|
|
141 Pokud budete postupovat podle těchto rad, jistě se vám dostane pomoci. Pochopte
|
|
142 však, že my všichni sledujeme konference dobrovolně ve svém volném čase. Máme
|
|
143 mnoho práce a nemůžeme vám zaručit že vyřešíme váš problém nebo že vůbec
|
|
144 dostanete odpověď.
|
|
145 </para>
|
|
146
|
|
147 </sect1>
|
|
148
|
|
149 <sect1 id="bugreports_where">
|
|
150 <title>Kam hlásit chyby</title>
|
|
151 <para>
|
15373
|
152 Přihlaste se do e-mailové konference MPlayer-users:
|
14697
|
153 <ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-users"/>
|
|
154 a pošlete své hlášení o chybách na adresu
|
|
155 <ulink url="mailto:mplayer-users@mplayerhq.hu"/> kde o tom můžeme diskutovat.
|
|
156 </para>
|
|
157 <para>
|
|
158 Pokud chcete, můžete místo toho použít zbrusu novou
|
|
159 <ulink url="http://bugzilla.mplayerhq.hu/">Bugzillu</ulink>.
|
|
160 </para>
|
|
161 <para>
|
|
162 Jazykem konference je <emphasis role="bold">Angličtina</emphasis>. Zachovávejte
|
|
163 prosím
|
|
164 <ulink url="http://www.ietf.org/rfc/rfc1855.txt">Pravidla Netikety</ulink> a
|
|
165 <emphasis role="bold">neposílejte HTML mail</emphasis> do žádné z našich
|
|
166 konferencí. Jinak můžete být ignorováni nebo vyhozeni. Pokud nevíte co je to
|
|
167 HTML mail, nebo proč je tak zatracován, přečtěte si tento
|
|
168 <ulink url="http://expita.com/nomime.html">výborný dokument</ulink>. Zde se
|
|
169 dovíte detaily včetně instrukcí pro vypnutí HTML. Poznamenejme též, že nebudeme
|
|
170 individuálně dělat CC (kopie) lidem, takže je dobré se přihlásit, abyste
|
|
171 obdrželi svou odpověď.
|
|
172 </para>
|
|
173 </sect1>
|
|
174
|
|
175 <sect1 id="bugreports_what">
|
|
176 <title>Co nahlásit</title>
|
|
177 <para>
|
|
178 Bude potřeba připojit log, konfiguraci nebo vzorky souborů ke svému hlášení chyb.
|
|
179 Pokud jsou některé z nich opravdu velké, pak je raději nahrajte na náš
|
|
180 <ulink url="ftp://mplayerhq.hu/MPlayer/incoming/">FTP server</ulink>
|
|
181 v komprimovaném formátu (preferujeme gzip a bzip2) a do zprávy zahrňte pouze
|
|
182 cestu a název souboru. Naše konference mají limit velikosti zprávy 80k, pokud
|
|
183 máte něco většího, musíte to zkomprimovat a nahrát na FTP.
|
|
184 </para>
|
|
185
|
|
186 <sect2 id="bugreports_system">
|
|
187 <title>Systémové informace</title>
|
|
188 <para>
|
|
189 <itemizedlist>
|
|
190 <listitem><para>
|
|
191 Vaše Linuxová distribuce nebo operační systém a jeho verze jako:
|
|
192 <itemizedlist>
|
|
193 <listitem><para>Red Hat 7.1</para></listitem>
|
|
194 <listitem><para>Slackware 7.0 + devel packs from 7.1 ...</para></listitem>
|
|
195 </itemizedlist>
|
|
196 </para></listitem>
|
|
197 <listitem><para>
|
|
198 verze jádra:
|
|
199 <screen>uname -a</screen>
|
|
200 </para></listitem>
|
|
201 <listitem><para>
|
|
202 verze libc:
|
|
203 <screen>ls -l /lib/libc[.-]*</screen>
|
|
204 </para></listitem>
|
|
205 <listitem><para>
|
|
206 verze gcc a ld:
|
|
207 <screen>
|
|
208 gcc -v
|
|
209 ld -v
|
|
210 </screen>
|
|
211 </para></listitem>
|
|
212 <listitem><para>
|
|
213 verze binutils:
|
|
214 <screen>
|
|
215 as --version
|
|
216 </screen>
|
|
217 </para></listitem>
|
|
218 <listitem><para>
|
|
219 Pokud máte problémy s celoobrazovkovým režimem:
|
|
220 <itemizedlist>
|
|
221 <listitem><para>Druh Window manageru a jeho verze</para></listitem>
|
|
222 </itemizedlist>
|
|
223 </para></listitem>
|
|
224 <listitem><para>
|
|
225 Pokud máte problémy s XVIDIX:
|
|
226 <itemizedlist>
|
|
227 <listitem><para>Hloubka barev v X:
|
|
228 <screen>xdpyinfo | grep "depth of root"</screen>
|
|
229 </para></listitem>
|
|
230 </itemizedlist>
|
|
231 </para></listitem>
|
|
232 <listitem><para>
|
|
233 Pokud je chybné pouze GUI:
|
|
234 <itemizedlist>
|
|
235 <listitem><para>verze GTK</para></listitem>
|
|
236 <listitem><para>verze GLIB</para></listitem>
|
|
237 <listitem><para>verze libpng</para></listitem>
|
|
238 <listitem><para>GUI situace kdy se chyba projevila</para></listitem>
|
|
239 </itemizedlist>
|
|
240 </para></listitem>
|
|
241 </itemizedlist>
|
|
242 </para>
|
|
243 </sect2>
|
|
244
|
|
245 <sect2 id="bugreports_hardware">
|
|
246 <title>Hardware a rozhraní (ovladače)</title>
|
|
247 <para>
|
|
248 <itemizedlist>
|
|
249 <listitem><para>
|
|
250 CPU info (to funguje pouze v Linuxu):
|
|
251 <screen>cat /proc/cpuinfo</screen>
|
|
252 </para></listitem>
|
|
253 <listitem><para>
|
|
254 Výrobce a model videokarty, např:
|
|
255 <itemizedlist>
|
|
256 <listitem><para>ASUS V3800U chip: nVidia TNT2 Ultra pro 32MB SDRAM</para></listitem>
|
|
257 <listitem><para>Matrox G400 DH 32MB SGRAM</para></listitem>
|
|
258 </itemizedlist>
|
|
259 </para></listitem>
|
|
260 <listitem><para>
|
|
261 Video driver type & version, e.g.:
|
|
262 <itemizedlist>
|
|
263 <listitem><para>X built-in driver</para></listitem>
|
|
264 <listitem><para>nVidia 0.9.623</para></listitem>
|
|
265 <listitem><para>Utah-GLX CVS 2001-02-17</para></listitem>
|
|
266 <listitem><para>DRI from X 4.0.3</para></listitem>
|
|
267 </itemizedlist>
|
|
268 </para></listitem>
|
|
269 <listitem><para>
|
|
270 Sound card type & driver, e.g.:
|
|
271 <itemizedlist>
|
|
272 <listitem><para>Creative SBLive! Gold with OSS driver from oss.creative.com</para></listitem>
|
|
273 <listitem><para>Creative SB16 with kernel OSS drivers</para></listitem>
|
|
274 <listitem><para>GUS PnP with ALSA OSS emulation</para></listitem>
|
|
275 </itemizedlist>
|
|
276 </para></listitem>
|
|
277 <listitem><para>
|
|
278 Pokud si nejste jisti, přidejte výstup z <command>lspci -vv</command>
|
|
279 na systémech Linux.
|
|
280 </para></listitem>
|
|
281 </itemizedlist>
|
|
282 </para>
|
|
283 </sect2>
|
|
284
|
|
285 <sect2 id="bugreports_configure">
|
|
286 <title>Problémy s konfigurací</title>
|
|
287 <para>
|
|
288 Pokud nastanou chyby během běhu <command>./configure</command>, nebo selže
|
|
289 autodetekce něčeho, prostudujte <filename>configure.log</filename>. Možná
|
|
290 naleznete odpověď zde. Například několik verzí stejné knihovny v systému, nebo
|
|
291 jste zapomněli nainstalovat vývojový (devel) balíček (to jsou ty s koncovkou
|
|
292 -dev). Pokud si myslíte, že je zde chyba, přidejte
|
|
293 <filename>configure.log</filename> do svého hlášení.
|
|
294 </para>
|
|
295 </sect2>
|
|
296
|
|
297 <sect2 id="bugreports_conpilation">
|
|
298 <title>Problémy s kompilací</title>
|
|
299 <para>
|
|
300 Zahrňte prosím tyto soubory:
|
|
301 <itemizedlist>
|
|
302 <listitem><para>config.h</para></listitem>
|
|
303 <listitem><para>config.mak</para></listitem>
|
|
304 </itemizedlist>
|
|
305 Pouze pokud selže kompilace pod jedním z těchto adresářů, zahrňte tyto soubory:
|
|
306 <itemizedlist>
|
|
307 <listitem><para>Gui/config.mak</para></listitem>
|
|
308 <listitem><para>libvo/config.mak</para></listitem>
|
|
309 <listitem><para>libao2/config.mak</para></listitem>
|
|
310 </itemizedlist>
|
|
311 </para>
|
|
312 </sect2>
|
|
313
|
|
314 <sect2 id="bugreports_playback">
|
|
315 <title>Problémy s přehráváním</title>
|
|
316 <para>
|
|
317 Zahrňte prosíme výstup <application>MPlayer</application>u v upovídaném režimu
|
|
318 úrovně 1 ale dejte pozor, abyste jej <emphasis role="bold">nezkrátili</emphasis>
|
|
319 při kopírování do mailu. Vývojáři potřebují všechny zprávy pro dobrou diagnózu
|
|
320 problému. Takto můžete přesměrovat výstup do souboru:
|
|
321 <screen>mplayer -v <replaceable>volby</replaceable> <replaceable>film</replaceable> > mplayer.log 2>&1</screen>
|
|
322 </para>
|
|
323
|
|
324 <para>
|
|
325 Pokud se problém vztahuje k jednomu nebo více souborům, pak prosím nahrajte
|
|
326 potížisty na:
|
|
327 <ulink url="ftp://mplayerhq.hu/MPlayer/incoming/"/>
|
|
328 </para>
|
|
329
|
|
330 <para>
|
|
331 Rovněž zde nahrajte malý textový soubor se stejným základním jménem a příponou
|
|
332 .txt. Popište problém který máte s daným souborem a připojte svůj e-mail a také
|
|
333 výstup <application>MPlayer</application>u v upovídaném režimu úrovně 1.
|
|
334 Pro reprodukci problému stačí obvykle prvních 1-5 MB souboru, ale pro jistotu
|
|
335 vás žádáme o:
|
|
336 <screen>dd if=<replaceable>váš_soubor</replaceable> of=<replaceable>malý_soubor</replaceable> bs=1024k count=5</screen>
|
|
337 To vezme prvních pět megabajtů '<emphasis role="bold">vašeho_souboru</emphasis>'
|
|
338 a zapíše je do '<emphasis role="bold">malého_souboru</emphasis>'. Pak znovu
|
|
339 zkuste tento malý vzorek a pokud se na něm chyba projeví, pak je tento vzorek
|
|
340 pro nás dostatečný.
|
|
341 Prosíme <emphasis role="bold">nikdy</emphasis> neposílejte tyto soubory e-mailem!
|
|
342 Nahrajte je na FTP a pošlete pouze cestu/název_souboru daného souboru na FTP
|
|
343 serveru. Pokud je soubor přístupný na internetu, pak stačí poslat
|
|
344 <emphasis role="bold">přesnou</emphasis> adresu URL.
|
|
345 </para>
|
|
346 </sect2>
|
|
347
|
|
348 <sect2 id="bugreports_crash">
|
|
349 <title>Pády</title>
|
|
350 <para>
|
|
351 Musíte spustit <application>MPlayer</application> z <command>gdb</command>
|
|
352 a poslat nám úplný výstup nebo pokud máte <filename>core</filename> dump
|
|
353 z pádu, můžete nám vyextrahovat užitečné informace ze souboru Core.
|
|
354 Jak to udělat:
|
|
355 </para>
|
|
356
|
|
357 <sect3 id="bugreports_debug">
|
|
358 <title>Jak uchovat informace o zopakovatelném pádu</title>
|
|
359 <para>
|
|
360 Překompilujte <application>MPlayer</application> se zapnutým debugovacím kódem:
|
|
361 <screen>
|
|
362 ./configure --enable-debug=3
|
|
363 make
|
|
364 </screen>
|
|
365 a spusťte <application>MPlayer</application> z gdb pomocí:
|
|
366 <screen>gdb ./mplayer</screen>
|
|
367 Nyní jste v gdb. Zadejte:
|
|
368 <screen>run -v <replaceable>volby-pro-mplayer</replaceable> <replaceable>soubor</replaceable></screen>
|
|
369 a zopakujte pád. Jakmile to dokážete, vrátí se gdb do režimu příkazového řádku,
|
|
370 kde musíte zadat
|
|
371 <screen>
|
|
372 bt
|
|
373 disass $pc-32 $pc+32
|
|
374 info all-registers
|
|
375 </screen>
|
|
376 </para>
|
|
377 </sect3>
|
|
378
|
|
379 <sect3 id="bugreports_core">
|
|
380 <title>Jak získat smysluplné informace z core dump</title>
|
|
381 <para>
|
|
382 Vytvořte následující příkazový řádek:
|
|
383 <screen>
|
|
384 bt
|
|
385 disass $pc-32 $pc+32
|
|
386 info all-registers
|
|
387 </screen>
|
|
388 Pak jednoduše spusťte tento příkaz:
|
|
389 <screen>gdb mplayer --core=core -batch --command=<replaceable>příkazový_soubor</replaceable> > mplayer.bug</screen>
|
|
390 </para>
|
|
391 </sect3>
|
|
392 </sect2>
|
|
393 </sect1>
|
|
394
|
|
395 <sect1 id="bugreports_advusers">
|
|
396 <title>Vím co dělám...</title>
|
|
397 <para>
|
|
398 Pokud jste vytvořili příkladné hlášení chyby pomocí výšeuvedených kroků a jste
|
|
399 si jisti, že chyba je v <application>MPlayer</application>u, nikoli chyba
|
|
400 kompilátoru nebo poškozený soubor, již jste si přečetli dokumentaci ale nenalezli
|
|
401 řešení, vaše ovladače zvuku jsou OK, pak byste se měli přihlásit do konference
|
15373
|
402 MPlayer-advusers a poslat hlášení chyb zde, abyste dostali lepší a rychlejší
|
14697
|
403 odpověď.
|
|
404 </para>
|
|
405
|
|
406 <para>
|
|
407 Mějte na paměti, že pokud zde pošlete nováčkovské otázky nebo otázky zodpovězené
|
|
408 v manuálu, budete ignorováni nebo vyhozeni, místo abyste dostali vhodnou odpověď.
|
|
409 Takže nám nenadávejte a přihlaste se do -advusers pouze pokud opravdu víte co
|
|
410 děláte a cítíte se být pokročilým uživatelem <application>MPlayer</application>u,
|
|
411 nebo vývojářem. Pokud splňujete tato kritéria, nebude pro vás těžké se
|
|
412 přihlásit...
|
|
413 </para>
|
|
414
|
|
415 </sect1>
|
|
416
|
|
417 </appendix>
|