【问题标题】:freeglut segfaults, no useful info from gdbfreeglut 段错误,没有来自 gdb 的有用信息
【发布时间】:2013-04-20 23:50:04
【问题描述】:

在我正在编写的这个程序中,我一直在使用 freeglut,而且通常它一直在工作。但是,有时当程序中出现一些与渲染完全无关的问题时,我会在 glutInit() 处得到一个段错误并且 GDB 没有解释。

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7942409 in glutInit () from /usr/lib/x86_64-linux-gnu/libglut.so.3

回溯:

#0  0x00007ffff7942409 in glutInit () from /usr/lib/x86_64-linux-gnu/libglut.so.3
#1  0x0000000000415d4c in initGL () at ../gfx/render.cpp:62
#2  0x00000000004035f3 in main () at battle.cpp:49

在禁用渲染的情况下运行不会产生错误。

所以,我想知道我需要做什么才能获得有关这些故障的更多信息。我可以获取回溯以查看 liblut.so.3 内部吗?

(顺便说一句,任何关于比 freeglut 更可靠的工具包的建议都值得赞赏。)

【问题讨论】:

    标签: opengl gdb freeglut


    【解决方案1】:

    我可以获取回溯以查看 liblut.so.3 内部吗?

    已经有一个正在查看libglut.so.3内部的回溯。

    你需要

    • 为其安装调试符号(sudo apt-get install freeglut3-dbg 或类似的),或者
    • 从源代码编译libglut.so,或者
    • 在程序集级别调试:x/i $pcdisasinfo registers

    【讨论】:

    • 这就是那些 -dbg 软件包的用途。今天学到了新东西。谢谢
    猜你喜欢
    • 2020-01-29
    • 1970-01-01
    • 1970-01-01
    • 2014-07-22
    • 1970-01-01
    • 1970-01-01
    • 2017-01-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多