A.6. 报告什么
上一页 | 附录 A. 如何报告错误 | 下一页

## A.6. 报告什么

你可能要在你的错误报告中包含日志，配置或例子文件。如果他们中一些非常大， 最好把它压缩（请尽量使用gzip或bzip2）并提交到我们的 FTP服务器 上并且在你的错误报告中只包含路径及文件名称。我们的邮件列表有80k的信息限制， 如果你有更大的附件，你不得不压缩后提交。

### A.6.1. 系统信息

- 你的Linux发行版本或操作系统及版本，如：

  - Red Hat 7.1

  - Slackware 7.0 + devel packs from 7.1 ...

- 内核版本：

      uname -a

- libc版本：

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

- gcc及ld版本：

      gcc -v
      ld -v

- binutils版本：

      as --version

- 如果你在全屏模式下出现问题：

  - 视窗管理器类型及版本

- 如果你有关于XVIDIX的问题：

  - X颜色深度：

        xdpyinfo | grep "depth of root"

- 如果只是GUI有错误：

  - GTK版本

  - GLIB版本

  - libpng版本

  - 错误产生时的GUI情况

### A.6.2. 硬件及驱动

- CPU信息（这只在Linux上工作）：

      cat /proc/cpuinfo

- 显卡厂家及型号，例如：

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

  - Matrox G400 DH 32MB SGRAM

- 显卡驱动 & 版本，例如:

  - X built-in driver

  - nVidia 0.9.623

  - Utah-GLX CVS 2001-02-17

  - DRI from X 4.0.3

- 声卡型号 & 驱动，例如：

  - Creative SBLive! Gold with OSS driver from oss.creative.com

  - Creative SB16 with kernel OSS drivers

  - GUS PnP with ALSA OSS emulation

- 如果还存在疑问，包含LInux系统上的lspci -vv输出信息。

### A.6.3. Configure问题

当你在执行./configure,或一些自动检测发生错误，阅读 `config.log`。你可能会在那里发现答案。例如同一链接库的不同 版本共存于你的系统上，或者你忘记安装开发包（包含有-dev后缀）。如果你认为有错误， 在你的错误报告中包含`config.log`。

### A.6.4. 编译问题

请包含这些文件：

- config.h

- config.mak

### A.6.5. 回放错误

请包含MPlayer在一级verbose模式下的输出，另外谨记 当你把它粘贴入邮件时不要截断输出 开发者需要所有信息以便正确诊断一个问题。你可以如下把输出定向到一个文件：

    mplayer -v options filename > mplayer.log 2>&1

如果你的问题只针对一个或更多文件，请把他们上传到： ftp://upload.mplayerhq.hu/MPlayer/incoming/

另外上传一个和你的原始文件有相同本名并用.txt为后缀的小文本文件。描述你在此文件 上遇到的问题，并且包含你的email以及MPlayer在verbose 一级模式下的输出。通常，文件的前1-5 MB足够用于重现问题，可是确定我们请你做：

    dd if=yourfile of=smallfile bs=1024k count=5

它将提取'你的文件'的前5MB，并将它写入 '小文件'。然后在此小文件上重试，如果 错误重现，你的例子对我们已经足够了。 请千万不要通过邮件传送此文件！ 上传并且只发送文件在FTP服务器上的路径/文件名。如果文件在网络上获得，那么发送 精确的URL就足够了。

### A.6.6. 崩溃

你需要在gdb里运行MPlayer并且把 完全输出发给我们，或者如果你有此崩溃的`core`输出，你能从 Core文件中提取有用的信息。如下：

#### A.6.6.1. 如何保存一个可重复崩溃的信息

重新编译MPlayer并打开debug选项:

    ./configure --enable-debug=3
    make

然后在gdb中运行MPlayer:

    gdb ./mplayer

你先在在gdb里面。输入：

    run -v options-to-mplayer filename

重复你的崩溃。你一重现此现象，gdb将使你返回命令行，在此你输入

    bt
    disass $pc-32 $pc+32
    info all-registers

#### A.6.6.2. 如何从core输出文件中提取有用信息

创建如下命令文件：

    bt
    disass $pc-32 $pc+32
    info all-registers

然后只执行这个命令

    gdb mplayer --core=core -batch --command=command_file > mplayer.bug

上一页 | 上一级 | 下一页
A.5. 到哪里报告错误 | 起始页 | A.7. 我知道我在做什么...