"syscall-template.S:没有这样的文件或目录"是GDB或我的程序的错误

Ale*_*Gao 5 c python gdb

我使用GDB来调试Python和C的组合程序.当程序的分段错误发生时,GDB给出了一个错误.

81  ../sysdeps/unix/syscall-template.S: No such file or directory.
Run Code Online (Sandbox Code Playgroud)

这里有几行引用信息.

0  0x00007ffff6f2b6d7 in kill () at ../sysdeps/unix/syscall-template.S:81
1  0x000000000042a241 in posix_kill.64590 (self=<optimized out>, args=<optimized out>) at ../Modules/posixmodule.c:4306
2  0x000000000050e78c in call_function (oparg=<optimized out>, pp_stack=0x7fffffffd7b0) at ../Python/ceval.c:4020
3  PyEval_EvalFrameEx (f=f@entry=Frame 0x7ffff5784608, for file /usr/local/lib/python2.7/dist-packages/django/utils/autoreload.py, line 121, in python_reloader (main_func=<instancemethod at remote 0x7ffff69a3a00>, args=(), kwargs={'use_static_handler': True, 'settings': None, 'pythonpath': None, 'verbosity': '1', 'traceback': None, 'use_ipv6': False, 'use_threading': True, 'use_reloader': True, 'insecure_serving': False}, exit_code=-11), 
throwflag=throwflag@entry=0) at ../Python/ceval.c:2666
Run Code Online (Sandbox Code Playgroud)

这是GDB或我的程序的错误吗?我在跟踪信息中找不到任何我的程序类.

谢谢 !

Tom*_*mey 14

如果程序将无效参数传递给C库函数,它可能会在C库中崩溃.而且,如果您没有安装C库的源代码,那么您将从gdb获得这样的消息.但是,这并不意味着任何错误......缺少程序使用的一个或多个库的debuginfo和/或源是正常的.通常,解决方案是"向上"几个堆栈帧,看看真正的问题是什么.您很少遇到库错误.