gdb调试PHP扩展错误

WBOY
Lepaskan: 2016-06-20 12:57:57
asal
870 orang telah melayarinya

有时候,使用PHP的第三方扩展之后,可能会发生一些错误,这个时候,可能就需要更底层的方式追踪调试程序发生错误的地方和原因,熟悉linux下C编程的肯定不陌生gdb

首先,使用ulimit -c命令,查看系统是否会生成 core文件

sh#返回结果可能是0ulimit -c 
Salin selepas log masuk

当返回结果为0时,说明系统不会生成core文件,这个时候使用ulimit -c命令改变系统的默认设置

shulimit -c unlimited#或者 ulimit -c n  #n大于0的数字
Salin selepas log masuk

这样当程序运行错的时候,就会把运行过程记录到core文件里面

一般来说,core文件会在程序运行目录下生成,文件名类似 core.5740
下面开始使用gdb来调试

sh gdb php -c core.5740#进入之后显示很多东西,然后不停的 按 输入 bt回车,查看执行流程#在gdb运行环境中,使用PHP的gdb调试脚本,其中/prefix/php-src-dir 是php的源码目录source /prefix/php-src-dir/.gdbinit#zbacktrace会更加精确到PHP的错误zbacktrace
Salin selepas log masuk

详细的使用gdb调试PHP的文章,可以参考鸟哥的博客

如何调试PHP的Core之获取基本信息

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!