失败加载XDEBUG



我试图在计算机上安装php的XDebug扩展名(Linux Mint,PHP版本7.3.6(。

我遵循说明表格xdebug向导页面。当我完成时,我在终端中运行了关注命令:

php --version

它向我显示了我的PHP的版本,也向我显示了以下警告:

失败加载/usr/lib/php/20180731/xdebug.so:/usr/lib/php/20180731/xdebug.so:undefined符号:gc_globals:gc_globals

>

Xdebug在调用phpinfo((时都不列出启用扩展名。您能提供帮助,我的Xdebug安装在哪里有问题?

我已经使用向导页面上的以下步骤安装了Xdebug:

• Download xdebug-2.7.2.tgz
• Install the pre-requisites for compiling PHP extensions.
• On your Ubuntu system, install them with: apt-get install php-dev autoconf automake
• Unpack the downloaded file with tar -xvzf xdebug-2.7.2.tgz
• Run: cd xdebug-2.7.2
• Run: phpize (See the FAQ if you don't have phpize).
• 
• As part of its output it should show:
• 
• Configuring for:
• ...
• Zend Module Api No:      20180731
• Zend Extension Api No:   320180731
• If it does not, you are using the wrong phpize. Please follow this FAQ entry and skip the next step.
• 
• Run: ./configure
• Run: make
• Run: cp modules/xdebug.so /usr/lib/php/20180731
• Edit /etc/php/7.3/cli/php.ini and add the line
• zend_extension = /usr/lib/php/20180731/xdebug.so

存在这个问题,就我而言,它发生了不同版本的PHP。CLI具有7.2版PHP版本,FPM具有7.3版。因此,在7.3服务器上使用了7.2的Xdebug安装版本。

检查CLI版本在终端中使用php -v

检查FPM版本使用phpinfo();页面或在终端中运行php-fpm7.2 -v(由于二进制名称中的版本有点毫无意义(。

在我的情况下,解决方案是删除与PHP 7.3有关的软件包。

但是您可以以其他方式解决该问题,例如安装正确版本的Xdebug或降级php-fpm。

我遇到与您相同的错误。巫师没有为我提供正确的版本。所以我跑了

pecl install xdebug

然后完成后,它说

您应该添加" zend_extension =/usr/lib/php/php/20180731/xdebug.so">

所以我做到了并运行

php -v

错误已消失,安装了Xdebug。

如果您对pecl命令有问题,请确保您有

apt-get install php7.3-xml

如果您不确定要附加哪个.ini文件,请运行

php -i | grep php.ini

最新更新