Dodatek C - Jak zgłaszać błędy
Jak zgłaszać błędy ?
Najpierw sprawdź ostatnie CVS, być może twój błąd został już poprawiony. Instrukcje (nieskomplikowane), jak ściągnąć CVS, znajdziesz na naszej stronie domowej.
Jeśli to nie pomogło: przeczytaj Dodatek D i inne dokumenty. Jeżeli twój problem nie jest znany lub nie rozwiązują go nasze instrukcje, wtedy zgłoś błąd:
Gdzie ?
Zapisz się na listę użytkowników mplayera:
http://mplayerhq.hu/mailman/listinfo/mplayer-users
i wyślij swój raport do:
mplayer-users@mplayerhq.hu
Nie odpiszemy bezpośrednio więc pamiętaj, aby zasubskrybować listę!!!
Nie wysyłaj raportów o błędach prywatnie, bezpośrednio na adres autora!!! Pracujemy wspólnie nad kodem, więc wszyscy są zainteresowani. Swoją drogą, często inni użytkownicy znają rozwiązanie (problemy z konfiguracją systemu, złe sterowniki itd.), nawet kiedy my myślimy, że to błąd w kodzie. Językiem tej listy jest ANGIELSKI!
Opisz swój problem ze szczegółami i nie zapomnij dołączyć tego:
Czego ?
1.Informacja o systemie, jaką chcemy znać:
uname -a
ls -l /lib/libc[.-]*
X -version
gcc -v
ld -v
as --version
2. Sprzęt i sterowniki:
cat /proc/cpuinfo
Przy problemach i błędach kompilacji
3. te pliki:
Przy problemach z odgrywaniem:
3. Wyjście mplayera przy poziomie 1 komunikatów (-v)
mplayer -v [opcje] nazwa_pliku &> mplayer.log
4. Jeżeli problem jest specyficzny dla jednego lub kilku plików, prześlij te pliki na adres:
ftp://mplayerhq.hu/MPlayer/incoming/
dd if=twój_plik of=mały_plik bs=1k count=1024
5. :W przypadku przerwań w działaniu programu ( segfault, SIGILL, sygnał 4 itd.):
Jeżeli masz coredump po tym zdarzeniu, patrz 5.a, jeśli nie patrz 5.b:
5.a: Zapisz i wyślij nam coredump (jeżeli został stworzony).
Jak to zrobić: Utwórz następujący skrypt:
disass $eip-32 $eip+32
printf "eax=%08lX\n",$eax
printf "ebx=%08lX\n",$ebx
printf "ecx=%08lX\n",$ecx
printf "edx=%08lX\n",$edx
printf "esp=%08lX\n",$esp
printf "ebp=%08lX\n",$ebp
printf "edi=%08lX\n",$edi
printf "esi=%08lX\n",$esi
Później po prostu wykonaj następujące polecenie:
gdb mplayer --core=core -batch --command=command_file >mplayer.bug
5.b.: Uruchom MPlayera w gdb:
Przekompiluj mplayera z włączeniem opcji debugowania kodu:
./configure --enable-debug
make
[w shellu roota/użytkownika:]
# gdb mplayer
[w gdb:]
> run -v [opcje-mplayera] nazwa_pliku
... (czekaj aż się przerwie)
> bt
> disass $eip-32 $eip+32
I wyślij nam wyjście z tego co powyższe!
Ogólnie:
Jeśli coś jest duże (logi itd.), wtedy lepiej załadować to (zgzipowane) przez ftp oraz dołączyć jedynie ścieżkę/nazwę pliku w raporcie!
Wiem co robię...
Jeśli stworzyłeś właściwy 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 kart 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ź. Ale strzeż się: jeśli wyślesz pytanie w stylu początkującego użytkownika bądź w typie rtfm, natychmiast zostaniesz zbanowany, nawet nie uzyskując często odpowiedzi na swoje pytania. A więc nie drażnij nas, zasubskrybuj -advusers tylko, jeśli naprawdę wiesz, co robisz i czujesz, że jesteś już zaawansowanym użytkownikiem lub developerem mplayera (a propos tego, jak subskrybować: dowiedz się sam! jeśli jesteś naprawdę zaawansowanym użytkownikiem, nie powinno to być dla ciebie problemem ...).