freeglut段错误,没有来自gdb的有用信息

时间:2013-04-20 23:50:05

标签: opengl gdb freeglut

在我写的这个程序中,我一直在使用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更可靠的工具包的任何建议都表示赞赏。)

1 个答案:

答案 0 :(得分:2)

  

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

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

你需要

  • 为其安装调试符号(sudo apt-get install freeglut3-dbg或某些此类)或
  • 从源代码编译libglut.so
  • 在汇编级调试:x/i $pcdisasinfo registers等。