<!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 wertvolleBeiträge für die Entwicklung. Aber genauso, wie es beim Schreibenguter Software ist, so verhält es sich auch mit guten Fehlerberichten: sieerfordern Arbeit. Bitte denk daran, dass die meisten Entwickler sehrbeschäftigt sind und täglich einen unglaublichen Berg Mail erhalten.Auch wenn deine Rückmeldungen für die Entwicklung von MPlayer vonentscheidender Bedeutung ist, so verstehe bitte, dass du wirklich <B>alle</B>hier verlangten Informationen zur Verfügung stellen und den Anweisungendieses 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 zubeheben, was äußerst positiv aufgenommen wird. Falls du das schongetan 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 Problemmöglicherweise schon gelöst ist. Die Entwicklung geht extremschnell voran. Die meisten Probleme in offiziellen MPlayer-Versionenwerden 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 imREADME gefunden werden. Wenn dies nicht hilft, sollte in der<A HREF="documentation.html#known_bugs">Liste der bekannten Fehler</A> und demRest der Dokumentationen nachgesehen werden. Wenn dein Problem nicht bekanntist 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 mehrereinteressierte Leute geben. Es kommt auch teilweise vor, dass derselbe Fehlervon anderen Benutzern gefunden wurde, die bereits eine Lösungzur Umgehung des Problems haben (sogar bei einem Fehler imMPlayer-Code).</P><P>Bitte beschreibe dein Problem so detailiert wie möglich. Dazugehört ein klein wenig Detektivarbeit, um die Umstände einzuengen,unter denen das Problem auftritt. Tritt der Fehler nur in bestimmtenSituationen auf? Ist er abhängig von der Datei oder dem Dateityp? Tritt ernur 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 dieChance, dass das Problem gelöst werden wird. Es sollte nicht vergessenwerden, auch die wertvollen unten angeforderten Informationen miteinzubeziehen.Ansonsten ist es wahrscheinlich unmöglich, eine Diagnose des Fehlers zuerstellen.</P><P>Ein exzellenter und gut geschriebener Führer, wie Fragen inöffentlichen Foren gestellt werden sollen, ist <AHREF="http://www.tuxedo.org/~esr/faqs/smart-questions.html">How To AskQuestions The Smart Way</A> von Eric S. Raymond. Es gibt auch einen zweitenFührer namens<A HREF="http://www.chiark.greenend.org.uk/~sgtatham/bugs.html">How to ReportBugs Effectively</A> von<A HREF="http://www.chiark.greenend.org.uk/~sgtatham/">Simon Tatham</A>. Fallsdu diesen Richtlinien folgst, sollte alles gut gehen. Bitte verstehe, dass wiralle den Mailinglisten freiwillig in unserer Freizeit folgen. Wir sind sehrbeschäftigt und können nicht garantieren, dass eine Lösung oderbloß 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 <AHREF="http://www.ietf.org/rfc/rfc1855.txt">Netiquette-Richtlinien</A> zu folgenund <B>keine HTML-Mails</B> zu irgendeiner unserer Listen zu senden. Man wirddabei bloss ignoriert oder von der Liste verstoßen. Falls du nichtweißt, was eine HTML-Mail ist, oder warum sie böse ist, dann lies <AHREF="http://expita.com/nomime.html">dieses gute Dokument</A>. Es erklärtalle Details und enthält Anweisungen, wie man HTML für Mailsausschaltet. Bitte denk auch daran, keine individuellen Kopien (CC) aneinzelne Personen zu versenden. Es ist also eine gute Idee, sich an der Listeanzumelden, 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 undBeispieldateien in deinen Fehlerbericht aufnehmen müssen. Wenn einigevon ihnen ziemlich groß werden, so ist es besser, wenn du sie auf unseren<A HREF="ftp://mplayerhq.hu/MPlayer/incoming/">FTP-Server</A> hochlädstund sie vorher komprimierst (bitte mit <CODE>gzip</CODE> oder<CODE>bzip2</CODE>). Gib dann in deinem Fehlerbericht nur den Pfad- undDateinamen an. Unsere Mailinglisten haben eineGrößenbeschränkung auf 80k, sodass du größereSachen 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> bekommstoder einige Sachen nicht automatisch richtig erkannt werden, so lies<CODE>configure.log</CODE>. Eventuell findest du dort die Antwort, z.B. wennverschiedene 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 Verzeichnissefehlschlä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 1bei, aber denk daran <B>die Ausgabe nicht zu k�rzen</B>, wenn diese der Maileingefügt wird. Die Entwickler benötigen alle Meldungen, um einegeignete Diagnose des Problems durchführen zu können. Die Ausgabekann 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, dannlade 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-Adresseenthält. Normalerweise reichen die ersten 1-5MB der Datei aus, um dasProblem zu reproduzieren, aber als erstes solltest du folgendesausprobieren:</P><P><CODE> dd if=deinedatei of=kleinedatei bs=1024kcount=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 kleinenDatei. Wenn der Fehler immer noch auftritt, dann reicht es, die kleine Dateihochzuladen.<BR> Sende <STRONG>NIE</STRONG> solche Dateien via Mail! Lade sieherauf und schicke nur den Pfad/Dateinamen der Datei auf dem FTP Server. Wenndie 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 unsdie vollständige Ausgabe schicken. Wenn du einen core dump hast, dannkannst du auch aus der <CODE>core</CODE>-Datei nützliche Informationenextrahieren. So geht's:</P><H4><A NAME="debug">B.4.6.1 Wie man Informationen bei einem reproduzierbarenAbsturz 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 zurEingabeaufforderung 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 coredump 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 dirsicher bist, dass es ein Bug in MPlayer und nicht ein Problem mit demCompiler oder eine defekte Datei ist, dann kannst du auch dermplayer-advusers-Mailingliste beitreten und dort posten, wenn du alleDokumentation gelesen hast und dein Soundtreiber ok ist. Du wirst dortschnellere und besser Antworten erhalten.<BR><BR> Aber sei gewarnt: Wenn duNewbiefragen oder Fragen stellst, die in dieser Anleitung bereits beantwortetwerden, wirst du ignoriert oder angemeckert, anstatt eine Antwort zuerhalten.<BR> Also ärgere uns nicht und trette der -advusers-Liste nurbei, wenn du weißt, was du machst und du dich wie ein erfahrenerMPlayer-Benutzer oder -Entwickler fühlst. Wenn du wirklich einerfahrener Benutzer bist sollte es kein Problem für dich sein, dichanzumelden...</P></BODY></HTML>