【发布时间】:2016-07-13 14:50:39
【问题描述】:
我需要调试旧的php版本:
PHP 5.6.22 (cli) (built: Jun 29 2016 14:26:09)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
在 Ubuntu 上:Ubuntu 16.04 LTS
我编译了适当的 PHP,并从 git 存储库中检查了 xdebug:
git://github.com/xdebug/xdebug.git
我尝试了不同的版本,但似乎只有 master 正在编译。
在我的错误中,我有:
Failed loading /usr/share/php53/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so: /usr/share/php53/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so: undefined symbol: zend_ce_error
我知道这是xdebug的新版本,PHP版本太旧了。
如果我尝试编译例如 xdebug 1_0,我有:
Makefile:181: recipe for target 'xdebug.lo' failed
对于其他版本,我还有其他错误。
我的基本问题是:如何为 PHP 5 找到合适的 xdebug?
更新
- xdebug.org/download.php - 就不同版本而言,它仅包含 Windows 二进制文件
- sudo apt-get install php5-xdebug - 不适用于 Ubuntu 16.04,因为它不支持 php5
- pecl install xdebug - 在最好的情况下会编译我已经拥有的最后一个版本,在最坏的情况下会失败(它发生在我身上,我试过了),因为上面提到了同样的原因。
【问题讨论】:
-
有 Windows 二进制文件...
-
sudo apt-get install php5-xdebug或为您的口味。或pecl install xdebug -
感谢您的评论,但是! Ubuntu 16.04 LTS 不再支持“php5-xdebug”,并且没有通过“pecl install xdebug”编译 xdebug 的库
-
带有 ubuntu 14.04 或 12.04 的虚拟机? phpbrew github.com/phpbrew/phpbrew 它还允许你管理扩展?