在Centos上安装XDebug错误


XDebug installation error on Centos

我在Centos上安装XDebug来调试NetBean PHP程序。我遵循了这个链接中的说明。在这个命令pecl install Xdebug中,我得到的错误是

PHP Fatal error: Call to a member function getFilelist() on a non-object in /usr/share/pear/PEAR/Command/Install.php on line 748 .

错误的原因是什么?y Centos版本为Centos Linux 7.1.1503, NetBeans IDE为IDE 8.0.2。不确定,它们是必需的。

谢谢

这很可能与安装过程中的权限问题有关。

请确保Pecl扩展试图安装扩展的目标文件夹(php/extensions)具有写访问权限。

所以要么用sudo运行命令(这是不推荐的),要么纠正权限,这样PHP脚本就可以在lib/php文件夹中创建一个新的文件夹和文件。


OS X

这是在OS X中工作的:

$ chmod -R ug+w /usr/local/Cellar/php*/lib/php

修复权限的文件夹应该在错误的正上方可见,例如

Build process completed successfully
Installing '/usr/local/Cellar/php56/5.6.20/lib/php/extensions/debug-non-zts-20131226/xhprof.so'
Fatal error: Call to a member function getFilelist() on null in /usr/local/Cellar/php56/5.6.20/lib/php/PEAR/Command/Install.php on line 747

所以基于上面的错误,你需要确保/usr/local/Cellar/php56/5.6.20/lib/php/extensions目录存在并且它是可写的。

相关:

  • gh# 1039 -无法安装pecl扩展
  • pr# 50 for pear-core -修复PHP致命错误:在null上调用成员函数getFilelist()