Отладка ошибки сегментации в коде C++, вызванном из Python

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

1 ответ

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

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

Другие вопросы по тегам