2014-01-03 1 views
0

Я написал одно расширение для PHP в C++ с помощью hep этого урока http://devzone.zend.com/1435/wrapping-c-classes-in-a-php-extension/. В моем расширении я создаю потоки и выполняю запросы mysql. Код работает нормально, но после запуска я получаю эту ошибку «Ошибка сегментации (сбрасывание ядра)».Ошибка сегментации в расширении PHP

Я попытался "GDB" отладчик и я получаю это

"Программа получила сигнал SIGSEGV, неисправность Сегментация. [Переключение на тему 0x7ffff7eb2700 (LWP 11985)]"

дайте мне знать, каким-либо образом я найти причину этой проблемы.

+0

«Код работает нормально, но после запуска я получаю эту ошибку« Ошибка сегментации (сбрасывание ядра) ». - Это странное рабочее определение слова «штраф». Если вы запустили gdb, он должен был остановиться, когда возникло исключение, и тем самым предоставил вам стек вызовов и переменные условия/значения, которые являются текущими во время нарушения. Вы столкнулись с проблемой работы в отладчике (хорошо). Теперь все, что осталось, - это * фактическая отладка *. – WhozCraig

+0

Ошибка завершения в конце выполнения программы –

ответ

0

Вы можете использовать команду bt full в пределах gdb для проверки стека вызовов. Пожалуйста, убедитесь, что вы скомпилировали расширение с помощью флагов -O0 -g и связались с флагом -g.