Как отлаживать Cython с помощью CygDB? - PullRequest
1 голос
/ 19 марта 2020

Предполагается, что возможно отладить проект Python3 / Cython с использованием gdb после сборки gdb из исходного кода, если вы настроите его с python2 .7, как указано в документе Cython отладки .

Однако, пример в документации:

  1. иногда нечеткий (например, код должен быть собран с python3, а отладчик - с python2, но я обнаружил, что python-gdb на самом деле связан на python2 ... так как это работает?)
  2. является неполным (некоторые шаги покрыты блоками кода, другие смутно упоминаются в тексте)
  3. не согласовано (например, ссылки на оба source.pyx и myfile.pyx)

Более того, он:

  1. не учитывает использование виртуальных сред
  2. , по-видимому, предполагает main функция находится в .pyx (но моя находится в обычном main.py)
  3. не указывает, что делать, если ваши файлы находятся в разных каталогах (например, как main.py и cythonCode.pyx делать)

Может кто-нибудь объяснить, пожалуйста (предварительно с рабочим примером) как отладить проект Python3 / Cython в ситуации, включающей все три упомянутые точки?

На данный момент кажется, что я действительно могу заставить DDD работать после этого Вики-статья Cython , но потом я обнаружил, что это «старый» способ сделать это, и он ссылается на текущий документ по отладке, с которым я также связан. Однако на данный момент мне неясно, как функционирует «новый» метод (старый имеет больше смысла для меня), и, безусловно, кажется, что заставить его работать более сложно.

...