调试器没有从Winpdb中分离

时间:2015-10-09 12:01:21

标签: python c++ linux winpdb

我正在使用PythonQT来执行python脚本(因为我需要从python脚本调用c ++方法)

我的winpdb版本是1.4.6,机器是CetOS 6.5

现在我想在python脚本中启用调试

我在脚本中添加了rpdb2.start_embedded_debugger('test')并调用了PythonQt.EvalFile()函数,现在脚本正在等待调试器。

我已从终端打开winpdb UI并附加到调试器。我可以执行“下一步”,“步入”等操作,并且所有局部变量都可以正确显示 但是当我试图分离调试器时,它没有分离。状态显示“DETACHING”并且没有发生任何事情,我甚至无法关闭winpdb。退出的唯一方法是kill winpdb。

如果我从终端运行相同的脚本文件,它正常工作(python)并按预期分离。

通过查看日志,我发现,如果我从终端运行,那么调试通道是加密的,但是当从PythonQt调试通道未加密时,不确定这与分离有任何关系

通过进一步查看rpdb2.py代码,我发现Winpdb挂在self.getSession().getProxy().request_go(fdetach)的{​​{1}}行:rpdb2.py

端口51000仍处于已建立模式

请告诉我这个。

1 个答案:

答案 0 :(得分:0)

最后我通过使用最新版本的python QT

解决了这个问题