Форум сайта python.su
Всем привет,
Есть python код, который использует модуль со SWIG объектами C++ библиотеки. Код не работает - метод swig объекта не возвращает что мне хочется, поэтому очень хочется посмотреть что в нём происходит.
На сколько я нагуглил, python tools for VS имеет такую фичу, но в лоб решить задачу не удалось (в дебагере объекты выглядят по прежнему). Подробного мануала (туториала) как это сделать я не нашёл, поэтому просто установил python символы и включил mixed debug mode. Я так понимаю, что этого всё таки недостаточно… Но дело в том, что опыта работы с pdb и swig у меня ноль, может есть какой-нибудь IDE с подробным туториалом как эту фичу в нём настроить? (линукс/виндовс - не принципиально)
Заранее благодарю за ответы!
Офлайн
VirtulЛучше не дебажить, а посмотреть документацию по swig. Понять как будет выглядеть то что вам нужно и поправить файл описания swig интерфейса.
не возвращает что мне хочется
Офлайн
Извиняюсь, не понял, выглядеть то что мне нужно, где? Во время исполнения хочется точку останова указать и увидеть значение поля, я для этих целей дебагер использую (изредко принты), какие-то другие варианты есть?
Офлайн
VirtulВот в это все и упирается. Поля в чем? Если в c++ любой отладчик вам его покажет. Если дебажите Python то там тоже полно IDE и отладчиков все они умеют показывать поля. линукс/виндовс - не принципиально, но естественно инструменты разные.
увидеть значение поля
Офлайн
Ок, использую pycharm community, создаю несколько swig разных объектов, в отладчике вижу только, что у всех у них тип что-то вроде SwygPyObject, и они не содержат никаких функций, переменных или чего-то ещё. Что-то не так описании swig интерфейса?
Ну и всё таки, кроме непосредственно объектов в идеале хочется ещё и попасть в исходный код c++ и пошагово проследить за его выполнением. Вот это возможно? Как?
Офлайн
VirtulДа.
Вот это возможно? Как?
Офлайн