B.4. Co zgłaszać

Możesz potrzebować dołączyć log, konfigurację lub przykładowy plik w twoim zgłoszeniu błędu. Jeżeli któryś z nich ma duży rozmiar, lepiej załadować go na nasz serwer FTP w skompresowanej postaci (gzip i bzip2 są preferowanymi formatami) i załączyć tylko ścieżkę i nazwę pliku do zgłoszenia błędu. Nasza lista ma ustawiony limit rozmiaru każdej wiadomości na 80k. Jeżeli potrzebujesz wysłać coś większego, musisz to skompresować albo załadować na serwer.

B.4.1. Informacja o systemie operacyjnym

  • Nazwa Twojej dystrybucji Linuksa albo system operacyjny. Np.:

    • Red Hat 7.1

    • Slackware 7.0 + pakiety rozwojowe z 7.1 ...

  • wersja jądra (kernela):

    uname -a

  • wersja biblioteki libc:

    ls -l /lib/libc[.-]*

  • wersja gcc i ld:

    gcc -v
    ld -v
    

  • wersja binutils:

    as --version
    

  • Jeżeli masz problem z trybem pełnoekranowym:

    • Menadżer okien i wersja

  • Jeżeli masz problem z XVIDIXem:

    • głębia barw Xów (colour depth):

      xdpyinfo | grep "depth of root"

  • Jeżeli tylko GUI zawiera błędy:

    • wersja GTK

    • wersja GLIB

    • wersja libpng

    • Sytuacja w której pojawia się błąd GUI

B.4.2. Sprzęt i sterowniki

  • informacje o procesorze (CPU) (to działa tylko pod Linuksem):

    cat /proc/cpuinfo

  • Producent karty graficznej i model. Np.:

    • ASUS V3800U chip: nVidia TNT2 Ultra pro 32MB SDRAM

    • Matrox G400 DH 32MB SGRAM

  • Typ sterownika video i wersja, np:

    • wbudowane sterowniki X

    • nVidia 0.9.623

    • Utah-GLX CVS 2001-02-17

    • DRI z X 4.0.3

  • Typ karty dźwiękowej i sterownik, np:

    • Creative SBLive! Gold ze sterownikiem OSS z oss.creative.com

    • Creative SB16 ze sterownikiem OSS z kernela

    • GUS PnP z emulacją ALSA OSS

  • Jeżeli masz wątpliwości, załącz wyjście lspci -vv systemu Linux.

B.4.3. Problemy z konfiguracją

Jeżeli dostajesz błąd podczas uruchamiania ./configure albo automatyczne wykrywanie czegoś zawiedzie, przeczytaj configure.log. Możliwe, że znajdziesz tam odpowiedź, na przykład kilka połączonych wersji tej samej biblioteki w Twoim systemie albo że zapomniałeś zainstalować pakietów rozwojowych (tych z przyrostkiem -dev albo -devel). Jeżeli wydaje Ci się, że istnieje jednak błąd, załącz configure.log w twoim raporcie.

B.4.4. Problemy z kompilacją

Prosimy załączyć następujące pliki:

  • config.h

  • config.mak

Tylko jeżeli kompilacja się nie powiedzie w którymś z tych katalogów, załącz następujące pliki:

  • Gui/config.mak

  • libvo/config.mak

  • libao2/config.mak

B.4.5. Problemy z odtwarzaniem

Prosimy załączyć wyjście MPlayera w trybie gadatliwym na poziomie pierwszym (opcja -v -przyp. tłum.), ale pamiętając o nie skracaniu wyniku polecenia podczas kopiowania go do Twojego listu. Developerzy potrzebują wszystkich informacji do prawidłowego zdiagnozowania problemu. Możesz przekierować wyjście bezpośrednio do pliku w ten sposób:

mplayer -v opcje nazwa_pliku > mplayer.log 2>&1

Jeżeli Twój problem jest specyficzny dla jednego albo wielu plików, załaduj winowajcę(ów) na: ftp://mplayerhq.hu/MPlayer/incoming/

Załaduj także mały plik tekstowy nazwany tak samo jak Twój plik, ale z rozszerzeniem .txt. Opisz w nim problem, który masz z zawartym plikiem i załącz swój adres email oraz wyjście MPlayera w trybie gadatliwym na poziomie pierwszym. Zazwyczaj pierwsze 1-5 MB pliku jest wystarczające do odtworzenia problemu, ale żeby być pewnym prosimy wykonać:

dd if=twój_plik of=mały_plik bs=1024k count=5
To polecenie weźmie pierwsze pięć megabajtów 'twojego_pliku' i zapisze je do 'małego_pliku'. Następnie spróbuj odtworzyć mały plik i jeśli błąd wciąż się pojawia plik ten jest dla nas wystarczający. Prosimy w żadnym wypadku nie wysyłać plików poprzez pocztę elektroniczną! Załaduj je na serwer FTP i wyślij tylko ścieżkę/nazwę pliku. Jeżeli plik jest dostępny w sieci, wyślij dokładny adres pod którym jest on dostępny.

B.4.6. Awarie programu (ang. Crashes)

Musisz uruchomić MPlayera wewnątrz gdb i wysłać nam kompletne wyjście albo jeżeli posiadasz zrzut core (ang. core dump) utworzony w wyniku awarii, wyciągnąć z niego użyteczne informacje. Oto jak to zrobić:

B.4.6.1. Jak otrzymać informację o awarii

Przekompiluj MPlayera z opcją debugowania kodu:

./configure --enable-debug=3
make
i uruchom MPlayera używając gdb:
gdb ./mplayer
Jesteś teraz wewnątrz gdb. Wpisz:
run -v opcje-mplayera
nazwa_pliku
i odtwórz swoją awarię. Gdy tylko to zrobisz, gdb przeniesie cię z powrotem do linii poleceń, gdzie należy wpisać
bt
disass $pc-32 $pc+32
info all-registers

B.4.6.2. Jak wyciągnąć sensowne informację ze zrzutu core (ang. core dump)

Utwórz następujący plik poleceń:

bt
disass $pc-32 $pc+32
info all-registers
A następnie uruchomić następujące polecenie:
gdb mplayer --core=core -batch --command=command_file > mplayer.bug