c 语言调试方法(调试 PHP 底层、扩展)

目的

PHP运行环境基于linux虚拟机,clion编辑器为win10的远程调试环境。

如果是调试php和php的扩展

编译参数

例如通过调试来学习php和swoole,我需要重新下载php源文件和swoole源文件,将swoole的源文件copy到php源文件下的ext目录下。然后再cd到php源文件根目录。运行./configure --help | grep debug可以匹配到有哪些debug编译选项,./configure --help | grep swoole 可以找到有哪些编译swoole选项。

这里我的命令为./configure --prefix=$HOME/code/myphp --enable-swoole --enable-debug

--prefix选项是安装路径

运行命令后会生成Makefile文件,编辑它

找到CFLAGS_CLEANCXXFLAGS_CLEANCXXFLAGS这3个选项,他们是GCC编译参数,将-g变成-g3,这样调试信息可以添加宏信息。

Clion配置说明

  1. 连接虚拟机

c语言调试方法(调试PHP底层、扩展)

使用SSH连接虚拟机,因此我们需要填写虚拟机地址、登录名、端口、密码(密钥)

  1. 配置源码映射

c语言调试方法(调试PHP底层、扩展)

Local path:填写win10项目路径

Deployment path :虚拟机项目路径

  1. 配置GDB

c语言调试方法(调试PHP底层、扩展)

c语言调试方法(调试PHP底层、扩展)

c语言调试方法(调试PHP底层、扩展)

虚拟机端配置

  1. 安装gdbserver

    sudo apt install gdbserver

  2. 运行gdbserver

    gdbserver :1234 php test.php

回到Clion打上断点调试。

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!