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
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Fehler berichten - MPlayer - The Movie Player for Linux</TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="../default.css">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</HEAD>
<BODY>
<H1><A NAME="appendix_b">Anhang B - Wie man einen Fehler berichtet</A></H1>
<P>Gute Fehlerberichte sind bei jedem Softwareprojekt sehr wertvolle
Beiträge für die Entwicklung. Aber genauso, wie es beim Schreiben
guter Software ist, so verhält es sich auch mit guten Fehlerberichten: sie
erfordern Arbeit. Bitte denk daran, dass die meisten Entwickler sehr
beschäftigt sind und täglich einen unglaublichen Berg Mail erhalten.
Auch wenn deine Rückmeldungen für die Entwicklung von MPlayer von
entscheidender Bedeutung ist, so verstehe bitte, dass du wirklich <B>alle</B>
hier verlangten Informationen zur Verfügung stellen und den Anweisungen
dieses Dokumentes folgen musst, damit wir dir helfen können.</P>
<H2><A NAME="fix">B.1 Wie sollen Fehler behoben werden?</A></H2>
<P>Wenn man geschickt genugt ist, kann man versuchen, den Fehler selber zu
beheben, was äußerst positiv aufgenommen wird. Falls du das schon
getan hast, solltest du <A HREF="../tech/patches.txt">dieses kurze Dokument</A>
lesen, um zu erfahren, wie der Code in MPlayer integriert werden kann.
Die Leute auf der
<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-dev-eng">mplayer-dev-eng</A>
Mailingliste können ansonsten bei Fragen helfen.</P>
<H2><A NAME="report">B.2 Wie sollen Fehler berichtet werden?</A></H2>
<P>Probiere es als allererstes die aktuelle CVS-Version, da dein Problem
möglicherweise schon gelöst ist. Die Entwicklung geht extrem
schnell voran. Die meisten Probleme in offiziellen MPlayer-Versionen
werden innerhalb von Tagen oder sogar Stunden den Entwicklern mitgeteilt.
Deswegen berichte Fehler nur dann, wenn sie in der <B>aktuellen CVS-Version</B>
auch noch vorliegen. CVS-Anweisungen können am unteren Ende
<A HREF="http://www.mplayerhq.hu/homepage/dload.html">dieser Seite</A> oder im
README gefunden werden. Wenn dies nicht hilft, sollte in der
<A HREF="documentation.html#known_bugs">Liste der bekannten Fehler</A> und dem
Rest der Dokumentationen nachgesehen werden. Wenn dein Problem nicht bekannt
ist oder durch unsere Anweisungen nicht gelst werden kann, dann berichte
über den Fehler.</P>
<P>Sende auf keinen Fall Fehlerberichte an individuelle Entwickler.
MPlayer ist Gemeinschaftsarbeit, also wird es vielleicht mehrere
interessierte Leute geben. Es kommt auch teilweise vor, dass derselbe Fehler
von anderen Benutzern gefunden wurde, die bereits eine Lösung
zur Umgehung des Problems haben (sogar bei einem Fehler im
MPlayer-Code).</P>
<P>Bitte beschreibe dein Problem so detailiert wie möglich. Dazu
gehört ein klein wenig Detektivarbeit, um die Umstände einzuengen,
unter denen das Problem auftritt. Tritt der Fehler nur in bestimmten
Situationen auf? Ist er abhängig von der Datei oder dem Dateityp? Tritt er
nur mit einem Codec oder mit allen auf? Tritt er mit allen Ausgabetreibern auf?
Je mehr Information zur Verfügung gestellt werden, um so besser stehen die
Chance, dass das Problem gelöst werden wird. Es sollte nicht vergessen
werden, auch die wertvollen unten angeforderten Informationen miteinzubeziehen.
Ansonsten ist es wahrscheinlich unmöglich, eine Diagnose des Fehlers zu
erstellen.</P>
<P>Ein exzellenter und gut geschriebener Führer, wie Fragen in
öffentlichen Foren gestellt werden sollen, ist <A
HREF="http://www.tuxedo.org/~esr/faqs/smart-questions.html">How To Ask
Questions The Smart Way</A> von Eric S. Raymond. Es gibt auch einen zweiten
Führer namens
<A HREF="http://www.chiark.greenend.org.uk/~sgtatham/bugs.html">How to Report
Bugs Effectively</A> von
<A HREF="http://www.chiark.greenend.org.uk/~sgtatham/">Simon Tatham</A>. Falls
du diesen Richtlinien folgst, sollte alles gut gehen. Bitte verstehe, dass wir
alle den Mailinglisten freiwillig in unserer Freizeit folgen. Wir sind sehr
beschäftigt und können nicht garantieren, dass eine Lösung oder
bloß eine Antwort zum beschriebenen Problem kommen wird.</P>
<H2><A HREF="where">B.3 Wo sollen Fehler berichtet werden?</A></H2>
<P>Tritt der mplayer-users Mailingliste bei:<BR>
<A HREF="http://mplayerhq.hu/mailman/listinfo/mplayer-users">http://mplayerhq.hu/mailman/listinfo/mplayer-users</A><BR>
und sende deinen Fehlerbericht an:<BR>
<A HREF="mailto:mplayer-users@mplayerhq.hu">mplayer-users@mplayerhq.hu</A></P>
<P>Die Sprache der Liste ist <B>Englisch</B>. Es wird gebeten, den <A
HREF="http://www.ietf.org/rfc/rfc1855.txt">Netiquette-Richtlinien</A> zu folgen
und <B>keine HTML-Mails</B> zu irgendeiner unserer Listen zu senden. Man wird
dabei bloss ignoriert oder von der Liste verstoßen. Falls du nicht
weißt, was eine HTML-Mail ist, oder warum sie böse ist, dann lies <A
HREF="http://expita.com/nomime.html">dieses gute Dokument</A>. Es erklärt
alle Details und enthält Anweisungen, wie man HTML für Mails
ausschaltet. Bitte denk auch daran, keine individuellen Kopien (CC) an
einzelne Personen zu versenden. Es ist also eine gute Idee, sich an der Liste
anzumelden, wenn man auch seine Antwort erhalten will.</P>
<H2><A HREF="what">B.4 Was soll berichtet werden?</A></H2>
<P>Du wirst wahrscheinlich Logdateien, Konfigurationsinformationen und
Beispieldateien in deinen Fehlerbericht aufnehmen müssen. Wenn einige
von ihnen ziemlich groß werden, so ist es besser, wenn du sie auf unseren
<A HREF="ftp://mplayerhq.hu/MPlayer/incoming/">FTP-Server</A> hochlädst
und sie vorher komprimierst (bitte mit <CODE>gzip</CODE> oder
<CODE>bzip2</CODE>). Gib dann in deinem Fehlerbericht nur den Pfad- und
Dateinamen an. Unsere Mailinglisten haben eine
Größenbeschränkung auf 80k, sodass du größere
Sachen definitiv komprimieren und hochladen musst.</P>
<H3><A NAME="system">B.4.1 Systeminformationen</A></H3>
<UL>
<LI>Deine Linux-Distribution oder Betriebssystem und die Versionsnummer:
<UL>
<LI>RedHat 7.1</LI>
<LI>Slackware 7.0 + Development-Pakete von 7.1 ...</LI>
</UL>
</LI>
<LI>Kernelversion:<BR>
<CODE>uname -a</CODE></LI>
<LI>libc-Version:<BR>
<CODE>ls -l /lib/libc[.-]*</CODE></LI>
<LI>X-Version:<BR>
<CODE>X -version</CODE></LI>
<LI>gcc- und ld-Versionen:<BR>
<CODE>gcc -v<BR>
ld -v</CODE></LI>
<LI>binutils-Version:<BR>
<CODE>as --version</CODE></LI>
<LI>Wenn du Pobleme mit dem Vollbildmodus hast:
<UL>
<LI>Window-manager-Typ und -Version</LI>
</UL>
</LI>
<LI>Bei Problemen mit XVIDIX:
<UL>
<LI>X-Farbtiefe:<BR>
<CODE>xdpyinfo | grep "depth of root"</CODE></LI>
</UL>
</LI>
<LI>Falls nur das GUI einen Fehler enthält:
<UL>
<LI>GTK-Version</LI>
<LI>GLIB-Version</LI>
<LI>libpng-Version</LI>
<LI>Zustand des GUIs, in dem der Fehler auftritt</LI>
</UL>
</LI>
</UL>
<H3><A NAME="hardware">B.4.2 Hardware und Treiber</A></H3>
<UL>
<LI>CPU-Infos (dies funktioniert nur mit Linux):<BR>
<CODE>cat /proc/cpuinfo</CODE></LI>
<LI>Grafikkartenhersteller und Modell:
<UL>
<LI>ASUS V3800U, Chipset: nVidia TNT2 Ultra Pro 32MB SDRAM</LI>
<LI>Matrox G400 DH 32MB SGRAM</LI>
</UL>
</LI>
<LI>Grafikkartentreiber-Typ & -Version:
<UL>
<LI>X eigener Treiber</LI>
<LI>nVidia 0.9.623</LI>
<LI>Utah-GLX CVS 2001-02-17</LI>
<LI>DRI von X 4.0.3</LI>
</UL>
</LI>
<LI>Soundkartentyp und -Treiber:
<UL>
<LI>Creative SBLive! Gold mit OSS-Treiber von oss.creative.com</LI>
<LI>Creative SB16 mit OSS-Treiber des Kernels</LI>
<LI>GUS PnP mit ALSA-OSS-Emulation</LI>
</UL>
</LI>
<LI>Wenn du unsicher bist, solltest du die Ausgabe von <CODE>lspci -vv</CODE>
mitschicken (auf Linux-Systemen).</LI>
</UL>
<H3><A NAME="compilation">B.4.3 Bei Fehlern bei <CODE>configure</CODE></A></H3>
<P>Wenn du Fehlermeldungen beim Aufruf von <CODE>./configure</CODE> bekommst
oder einige Sachen nicht automatisch richtig erkannt werden, so lies
<CODE>configure.log</CODE>. Eventuell findest du dort die Antwort, z.B. wenn
verschiedene Versionen einer Bibliothek auf deinem System gemischt rumliegen,
oder wenn du vergessen hast, das Entwicklungspaket zu installieren
(das sind die, die auf -dev oder -devel enden).</P>
<H3><A NAME="compilation">B.4.4 Bei Fehlern während des
Übersetzens</A></H3>
Bitte schicke diese Dateien mit:
<UL>
<LI><CODE>config.h</CODE></LI>
<LI><CODE>config.mak</CODE></LI>
</UL>
Nur wenn die Compilierung in einem der unten genannten Verzeichnisse
fehlschlägt, füge diese Datein an:
<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="playback">B.4.5 Bei Wiedergabeproblemen</A></H3>
<P>Bitte füge die Ausgabe von MPlayer in Ausführlichkeits-Stufe 1
bei, aber denk daran <B>die Ausgabe nicht zu kürzen</B>, wenn diese der Mail
eingefügt wird. Die Entwickler benötigen alle Meldungen, um eine
geignete Diagnose des Problems durchführen zu können. Die Ausgabe
kann mit folgendem Befehl in eine Datei geschrieben werden:</P>
<P><CODE> mplayer -v [Optionen] [Dateiname]
> mplayer.log 2>&1</CODE></P>
<P>Wenn das Problem nur bei einer oder einigen wenigen Dateien auftritt, dann
lade die Datei bitte auf
<A HREF="ftp://mplayerhq.hu/MPlayer/incoming/">
ftp://mplayerhq.hu/MPlayer/incoming/</A></P> hoch.</P>
<P>Uploade auch eine kleine .txt-Datei mit dem selben Namen wie die Datei (+
.txt Endung), die eine Problembeschreibung zur jeweiligen Datei, die
detaillierte Ausgabe (-v) von MPlayer und deine Email-Adresse
enthält. Normalerweise reichen die ersten 1-5MB der Datei aus, um das
Problem zu reproduzieren, aber als erstes solltest du folgendes
ausprobieren:</P>
<P><CODE> dd if=deinedatei of=kleinedatei bs=1024k
count=5</CODE></P>
<P>Das kopiert die ersten 5 MB von <STRONG>'deinedatei'</STRONG> in die Datei
<STRONG>'kleinedatei'</STRONG>. Nun versuche es nochmals mit dieser kleinen
Datei. Wenn der Fehler immer noch auftritt, dann reicht es, die kleine Datei
hochzuladen.<BR> Sende <STRONG>NIE</STRONG> solche Dateien via Mail! Lade sie
herauf und schicke nur den Pfad/Dateinamen der Datei auf dem FTP Server. Wenn
die Datei im Internet bereits verfügbar ist, so reicht die
<STRONG>exakte</STRONG> URL aus.</P>
<H3><A NAME="crash">B.4.6 Bei Abstürzen</A></H3>
<P>Du musst MPlayer aus <CODE>gdb</CODE> heraus aufrufen und uns
die vollständige Ausgabe schicken. Wenn du einen core dump hast, dann
kannst du auch aus der <CODE>core</CODE>-Datei nützliche Informationen
extrahieren. So geht's:</P>
<H4><A NAME="debug">B.4.6.1 Wie man Informationen bei einem reproduzierbaren
Absturz bewahrt</A></H4>
Kompiliere MPlayer mit eingeschaltetem Debugging:
<P><CODE> ./configure --enable-debug=3<BR>
make</CODE></P>
Starte nun gdb mit MPlayer:
<P><CODE> gdb ./mplayer</CODE></P>
Du bist nun in gdb. Gib folgendes ein:
<P><CODE> run -v [options-to-mplayer]
filename</code></P>
und reproduziere deinen Absturz. Sobald er auftritt, wird gdb zur
Eingabeaufforderung zurückkehren, bei der du
<P><CODE> bt<BR>
disass $pc-32 $pc+32<BR>
info all-registers</CODE></P>
eingibst.
<H4><A NAME="core">B.4.6.2 Wie man brauchbare Informationen von einem core
dump extrahiert</A></H4>
<P>Bitte erzeuge die folgende Befehlsdatei (Command File):</P>
<P><CODE>disass $pc-32 $pc+32<BR>
info all-registers</CODE></P>
<P>Dann führe einfach den folgenden Befehl auf der Konsole aus:</P>
<P> <CODE>gdb mplayer --core=core -batch
--command=command_file > mplayer.bug</CODE></P>
<H2><A NAME="advusers">B.5 Ich weiß, was ich tue...</A></H2>
<P>Wenn du einen Fehlerbericht wie oben beschrieben geschreiben hast und du dir
sicher bist, dass es ein Bug in MPlayer und nicht ein Problem mit dem
Compiler oder eine defekte Datei ist, dann kannst du auch der
mplayer-advusers-Mailingliste beitreten und dort posten, wenn du alle
Dokumentation gelesen hast und dein Soundtreiber ok ist. Du wirst dort
schnellere und besser Antworten erhalten.<BR><BR> Aber sei gewarnt: Wenn du
Newbiefragen oder Fragen stellst, die in dieser Anleitung bereits beantwortet
werden, wirst du ignoriert oder angemeckert, anstatt eine Antwort zu
erhalten.<BR> Also ärgere uns nicht und trette der -advusers-Liste nur
bei, wenn du weißt, was du machst und du dich wie ein erfahrener
MPlayer-Benutzer oder -Entwickler fühlst. Wenn du wirklich ein
erfahrener Benutzer bist sollte es kein Problem für dich sein, dich
anzumelden...</P>
</BODY>
</HTML>
|