2015-10-09 2 views
0

Я использую PythonQT выполнить питон скрипт (потому что мне нужно вызвать методы гр ++ из питона сценария)Debugger не отделяя от Winpdb

Моя Winpdb версия 1.4.6 и машина CetOS 6,5

сейчас Я хочу включить отладку в скрипте python

Я добавил rpdb2.start_embedded_debugger('test') внутри скрипта и вызвал функцию PythonQt.EvalFile(), теперь скрипт ждет отладчика.

Я открыл интерфейс WinPdb от терминала и подключен к отладчику. Я могу сделать «Следующий», «Шаг в» и т. Д., И все локальные переменные видны правильно Но когда я пытаюсь отсоединить отладчик, он не отделяется. Статус показывает «DETACHING» и ничего не происходит, и я даже не могу закрыть winpdb. Единственный выход - убить winpdb.

Если я запускаю один и тот же файл сценария с терминала, он работает правильно (python) и отсоединяется, как ожидалось.

Просматривая журналы я обнаружил, что, если я бегу от терминала, то канал отладки зашифрован, но когда от отладки канала PythonQt не шифруются, не уверен, что это имеет какое-либо отношение с отсоединением

Дальнейшим глядя rpdb2.py код, который я нашел, что Winpdb является висеть на линии self.getSession().getProxy().request_go(fdetach) из request_go(self, fdetach = False): в rpdb2.py

51000 порт все еще находится в установившемся режиме

Пожалуйста, сообщите мне об этом.

ответ

0

Наконец, я исправил проблему, используя последнюю версию python QT