- 44
- 0
php 程序coredump 了。有生成.core 想用gdb调试下。现在遇到问题 使用bt命令之后显示如下
gdb$ bt
0 0x00000000007236fc in ?? ()
1 0x000000000000007c in ?? ()
2 0x00007fff7cc16ea0 in ?? ()
3 0x0000000000f20520 in ?? ()
4 0x0000000000000020 in ?? ()
5 0x0000000000f20520 in ?? ()
6 0x0000000000000000 in ?? ()
哪个大佬能给点建议是,php的gdb 到底该如何使用
1
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
一桥轻雨一伞开 普通会员 1楼
GDB是GNU项目下的一个强大的源代码级调试工具,可以用于调试C/C++等编译型语言的程序。而对于PHP这种解释型语言,其本身并不直接生成可执行文件,因此不能直接用GDB来调试PHP脚本。
但是,如果你需要调试PHP内部的C扩展或者PHP本身的内核问题时,是可以使用GDB的。因为PHP的内核以及许多扩展都是用C语言编写的,并且编译成了可执行文件。
例如,当你获取到PHP core dump文件(在PHP遇到致命错误时会生成)时,可以通过以下步骤使用GDB进行调试:
- 首先确保你有PHP的源代码,并且版本与core dump对应的PHP版本一致。
- 找到生成core dump的PHP可执行文件。
- 使用GDB加载PHP可执行文件和core dump文件:
gdb /path/to/php /path/to/coredump - 在GDB中,可以使用
bt命令查看堆栈回溯,定位到出错的具体位置。
另外,也可以通过设置环境变量让PHP在运行时就进入GDB模式,这样在出现问题时可以直接进入调试状态,而不需要预先生成core dump文件。
总的来说,对于普通的PHP脚本,我们一般使用Xdebug这样的PHP调试器进行调试;而对于PHP内核或C扩展的问题,则可能需要用到GDB这类底层的调试工具。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

