Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 调用gdb_init时出现分段错误_Python_Gdb - Fatal编程技术网

Python 调用gdb_init时出现分段错误

Python 调用gdb_init时出现分段错误,python,gdb,Python,Gdb,我已经为gdb编写了一个包装程序,首先它将调用gdb_init,在这里它检查python版本,该版本由于分段错误而失败 我的机器是64位linux机器,我们需要32位gdb及其相关软件包。考虑到我已经放置了python和python-devel 32位软件包。除此之外,所有代码都是用-m32编译的 这是我要买的stackback Starting program: test proc1 1.rxt [Thread debugging using libthread_db enabled] pro

我已经为gdb编写了一个包装程序,首先它将调用gdb_init,在这里它检查python版本,该版本由于分段错误而失败

我的机器是64位linux机器,我们需要32位gdb及其相关软件包。考虑到我已经放置了python和python-devel 32位软件包。除此之外,所有代码都是用-m32编译的

这是我要买的stackback

Starting program: test proc1 1.rxt
[Thread debugging using libthread_db enabled]
program received signal SIGSEGV, Segmentation fault.
0x083203e6 in lbasename ()
(gdb) bt
     #0  0x083203e6 in lbasename ()
     #1  0x08202705 in ldirname ()
     #2  0x080df54a in _initialize_python ()
     #3  0x081fefef in gdb_init ()
     #4  0x080909cf in init_libgdb (symfile=0xffffcef8 "proc1", outfile=0xffffcefe "1.txt")      at ../gdbinterface.c:785
     #5  0x08090d0b in main (argc=5, argv=0xffffcc74) at ../test.cpp:79

非常感谢您的帮助。

您必须在启动时设置python_libdir


如果你想拥有自己的驱动程序,你只需要深入了解细节。gdb内部不支持这样做。

请向我们展示您的测试。cppTom添加了test.cppTom的片段,感谢您的回复,您能告诉我如何为gdb设置python_libdir吗?我认为您应该查看gdb源代码,看看它在做什么。你是在DIY领域。
Starting program: test proc1 1.rxt
[Thread debugging using libthread_db enabled]
program received signal SIGSEGV, Segmentation fault.
0x083203e6 in lbasename ()
(gdb) bt
     #0  0x083203e6 in lbasename ()
     #1  0x08202705 in ldirname ()
     #2  0x080df54a in _initialize_python ()
     #3  0x081fefef in gdb_init ()
     #4  0x080909cf in init_libgdb (symfile=0xffffcef8 "proc1", outfile=0xffffcefe "1.txt")      at ../gdbinterface.c:785
     #5  0x08090d0b in main (argc=5, argv=0xffffcc74) at ../test.cpp:79