Отладка ошибки сегментации в коде C ++, вызванном из Python - PullRequest
3 голосов
/ 06 октября 2011

У меня есть тест, который запускает скрипт на python, который вызывает код на C ++, где он вызывает ошибки и выгружает ядроЯ пытался загрузить основной файл в GDB, используя /usr/bin/python2.6, но это просто дает мне ??для всех предметов в стеке трассировки.Как мне отладить этот основной файл?

1 Ответ

1 голос
/ 06 октября 2011

Вам необходимо скомпилировать версию Python с символами отладки.Вы можете сделать это, создав Python с ./configure --with-pydebug.Надеюсь, вы сможете найти ошибку таким образом.

Это изменит поведение Python внутренне в некоторых отношениях.Если вы по-прежнему не получаете segfault таким образом, вы можете попробовать запустить ./configure CFLAGS="-O0 -ggdb3" или даже просто ./configure CFLAGS=-ggdb3.

...