欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

c++ - 如何查看php内核的调度顺序,不想每次编译然后看看是否执行了自己想要的分支

程序员文章站 2024-01-07 15:42:40
...
问题是这样的,我想调试一下看看php内核的具体文件调用,大体的调用结构自己大概也知道了,但是具体的不知道如何方便的调试

我目前所用的方法就是手动的去php_printf一些信息,然后重新编译php来看看是否走到了这一步,但是这样每次花好长时间重新编译。

所以想问大家有没有好的办法可以调试!

回复内容:

问题是这样的,我想调试一下看看php内核的具体文件调用,大体的调用结构自己大概也知道了,但是具体的不知道如何方便的调试

我目前所用的方法就是手动的去php_printf一些信息,然后重新编译php来看看是否走到了这一步,但是这样每次花好长时间重新编译。

所以想问大家有没有好的办法可以调试!

strace

编译 phpconfigure 中添加 --enable-debug 即可打开 php 调试模式,这时候编译的 php 是带有调试信息的,可以通过 gdb 进行断点调试。不知道这样能不能满足你的需求?

不知道你使用的是什么IDE,我只是介绍一下我的经验。我开发PHP扩展使用 CLion ,使用 debug 模式的 php ,在 Clion 中直接使用 gcc 编译扩展运行,断点可以直接在编译器中打,调试运行、步进都正常使用。如果 php 的源码仍然保留着,可以把断点直接打到源码中。编译到开始调试一步完成。

相关标签: php c++ c