自从最近对我的发行版(PLD Linux)进行重大升级以来,我一直在处理大量程序。据我所知,任何涉及OpenGL或PulseAudio段错误的内容。我正在使用专有的nvidia驱动程序和3.2.x内核。Xorg本身运行良好,我能够运行大多数程序,但是mplayer segfault之类的东西并且任何程序都不会发出声音。
一旦确定它可能与OpenGL有关,便开始glxgears
进行测试。单独运行它会立即出现段错误。然后我发现在下运行它strace
很好。同样的道理对于mplayer
。立即在测试mp3文件segfault上运行它,运行strace mplayer
播放就很好了(尽管脉冲音频仍然消亡,并且它恢复为虚拟输出设备)。
如何在某些情况下运行某些东西以strace
防止它出现段错误,我将如何继续调试情况?
[ 1170.678996] mplayer[3970]: segfault at ffffe0b4 ip b6464216 sp bfd84930 error 4 in libGL.so.290.10[b63e4000+a9000]
。怎么办?
gdb
并从段错误发生的地方获得回溯?
strace
二进制文件是否设置了粘性位?