“syscall template.S:No such file or directory”是GDB或我的程序的错误吗

2024-05-28 22:48:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我用GDB调试了Python和C的组合程序,当程序出现分段错误时,GDB会给我一个错误。

81  ../sysdeps/unix/syscall-template.S: No such file or directory.

这里有几行跟踪信息。

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

是GDB的bug还是我的程序?在trackback信息中找不到我的程序的任何类。

谢谢!


Tags: in程序nonetrueuse错误unixtemplate
1条回答
网友
1楼 · 发布于 2024-05-28 22:48:59

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

相关问题 更多 >

    热门问题