扩展调试

编译php

加上--enable-debug --enable-phpdbg CFLAGS="-g3 -gdwarf-2"

./configure --prefix=/path --enable-debug --enable-phpdbg --with-apxs2=apxs --enable-fpm --enable-sockets --enable-mbstring CFLAGS="-g3 -gdwarf-2"

编译扩展

在config.m4文件加上

if test -z "$PHP_DEBUG"; then
 AC_ARG_ENABLE(debug,
  [--enable-debug compile with debugging system],
  [PHP_DEBUG=$enableval], [PHP_DEBUG=no]
 )
fi

CFLAGS="$CFLAGS -g3 -gdwarf-2"

调试

gdb php #运行gdb,调试php
(gdb) b zif_pcap_lib_version #下函数断点
(gdb) run test.php #运行包含新函数的测试脚本


常用调试方法

(gdb) info macro Q # 查看宏Q的定义位置
(gdb) macro expand ADD(1) # 展开宏ADD的调用

你可能感兴趣的:(扩展调试)