我正在尝试使用 gdb 调试一个出现段错误的 PHP 扩展,但我似乎遇到了一些调试问题。当我使用 php 运行 gdb 时,我得到以下内容
#0 0x00007fff8eb6e732 in ?? ()
#1 0x00007fff5fbfe910 in ?? ()
#2 0x0000000100ebe21b in ?? ()
#3 0xffff0000ffff027f in ?? ()
#4 0x00000000ffffffff in ?? ()
#5 0x0000000000000000 in ?? ()
而且它似乎没有多大帮助,因为它是空的。我是否遗漏了一些东西(??
和 ()
),以便我可以找出哪个部分是段错误的?
最佳答案
您需要确保 php
和您的 php
扩展是使用符号输出进行编译的(即使用 -g
标志而不是传递给剥离
)。根据您的发行版,该发行版可能有备用版本。
但是,该堆栈跟踪看起来很可疑。在我看来,好像有东西覆盖了堆栈。
关于php - 尝试调试 PHP Seg 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22819789/