我报告了一个VLC 错误并包含gdb
's的输出bt full
,但项目代表的回应是跟踪是“不完整的”。如何生成可供开发人员使用的跟踪?他们的文档和错误反馈没有说明如何做到这一点。
按照您提供的链接,您的问题唯一有意义的部分是他们要求符号堆栈跟踪。但是,它对解释如何做没有帮助。
(例如,对于那些不知道或不记得的人,只能通过使用调试信息编译二进制文件才能获得符号堆栈跟踪)
我发现另一个 VLC 页面在该主题上更有帮助,并且比链接到的页面更好。
当编译VLC媒体播放器,您
可以使用在./configure脚本--enable-调试必须编译调试二进制文件。
在正在讨论的情况下,根据前面提到的链接,我在这里替换了 can for must。
它的用途
当然,在调试模式下编译的二进制文件将或应该像发布版本一样(或多或少)。区别在于:
- 开发人员可以在 VLC 达到用于开发目的的可疑状态时导致崩溃,而发布版本不会处于相同的可疑状态
二进制回溯在这种模式下是有意义的,因为符号嵌入在其中。
如何启用它
如上所述,您基本上只需要在 ./configure 阶段添加 CFLAGS="-g" CXXFLAGS="-g" --enable-debug 参数。
为了进入代码,更好的是做 CFLAGS="-g -Og" CXXFLAGS="-g -Og" 也添加 --disable-optimizations 而不是使用 --enable-release。将 -Og 替换为 -O0 以防止编译器优化变量。
因此,在编译调试二进制文件后,您现在可以向开发人员发送错误报告,描述导致崩溃和“gdb bt full”的操作。
另请参阅:VLC - 报告错误
归档时间: |
|
查看次数: |
434 次 |
最近记录: |