7

我正在尝试让 xdebug 在 PHP 7 上工作。我正在从版本http://xdebug.org/files/xdebug-2.4.0rc4.tgz构建 xdebug.so 文件。phpize 输出看起来正确(Zend Extension Api No: 320151012)但是我Xdebug requires Zend Engine API version 220121212.从 PHP 中得到。

所以我遵循了这些说明:

量身定制的安装说明

概括

Xdebug 已安装:无服务器 API:Apache 2.0 处理程序 Windows:无 Zend 服务器:无 PHP 版本:7.0.9-1 Zend API 编号:320151012 PHP API 编号:20151012 调试构建:无线程安全构建:无配置文件路径:/etc /php/7.0/apache2 配置文件:/etc/php/7.0/apache2/php.ini 扩展目录:/usr/lib/php/20151012 使用说明

下载 xdebug-2.4.1.tgz 解压下载的文件 tar -xvzf xdebug-2.4.1.tgz 运行: cd xdebug-2.4.1 运行: phpize (如果没有phpize,请参阅FAQ。

作为其输出的一部分,它应该显示:

配置为: ... Zend Module Api No: 20151012 Zend Extension Api No: 320151012 如果没有,您使用了错误的 phpize。请按照此常见问题解答条目并跳过下一步。

运行:./configure 运行:make 运行:cp modules/xdebug.so /usr/lib/php/20151012 编辑 /etc/php/7.0/apache2/php.ini 并添加行 zend_extension = /usr/lib/php/ 20151012/xdebug.so 重启网络服务器

除了我安装了 php7.0-dev 而不是 php5 apt-get install -y php7.0-dev

当我运行phpize命令时,我得到以下输出:

配置:

PHP API 版本:20151012

Zend 模块 API 编号:20151012

Zend 扩展 API 编号:320151012

正如预期的那样。但是,当我运行 PHP 时,我得到:

Xdebug 需要 Zend Engine API 版本 220121212。

安装的 Zend Engine API 版本 320151012 较新。

在http://xdebug.org/docs/faq#api联系 Derick Rethans 以获取更高版本的 Xdebug。

我显然在某个地方做错了什么!非常感谢您对调试问题的任何帮助!:)

4

1 回答 1

7

所以我通过使用 apt-get 包解决了这个问题: apt-get install -y php-xdebug

这似乎安装了正确的 xdebug.so 文件并且一切正常!

于 2016-08-22T12:08:17.917 回答