【问题标题】:Why does the installation of xdebug on my Mac not work?为什么在我的 Mac 上安装 xdebug 不起作用?
【发布时间】:2021-10-26 20:08:30
【问题描述】:

我使用 brew install php 安装了带有 Homebrew 的 PHP。

php -v 给我:

PHP 8.0.9 (cli) (built: Jul 29 2021 17:21:21) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.9, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.9, Copyright (c), by Zend Technologies

所以 PHP 安装成功,并且作为服务运行,brew services start php

要安装 xdebug,我使用命令 pecl install xdebug,它似乎可以正常工作,但最后我收到了消息:

Build process completed successfully
Installing '/usr/local/Cellar/php/8.0.9/pecl/20200930/xdebug.so'

Warning: mkdir(): File exists in System.php on line 294
PHP Warning:  mkdir(): File exists in /usr/local/Cellar/php/8.0.9/share/php/pear/System.php on line 294

Warning: mkdir(): File exists in /usr/local/Cellar/php/8.0.9/share/php/pear/System.php on line 294
ERROR: failed to mkdir /usr/local/Cellar/php/8.0.9/pecl/20200930

安装文档 xdebug.org 中的安装说明没有帮助。我尝试在 php 目录中创建一个目录 99-xdebug.ini(不是由 install 命令创建的)并编辑 php.ini 文件以添加 zend_extension=xdebug。但是重启Webserver和php服务后还是不行,php还是没有用xdebug显示(php -v)。

我正在使用没有 Touch Bar 和 Big Sur 的 Macbook 13 2017。

编辑: 我从导演那里删除了 pecl,现在安装工作正常。但是现在我在使用php-v时遇到了如下问题

PHP Warning:  Failed loading Zend extension 'xdebug' (tried: /usr/local/lib/php/pecl/20200930/xdebug (dlopen(/usr/local/lib/php/pecl/20200930/xdebug, 9): image not found), /usr/local/lib/php/pecl/20200930/xdebug.so (dlopen(/usr/local/lib/php/pecl/20200930/xdebug.so, 9): image not found)) in Unknown on line 0

Warning: Failed loading Zend extension 'xdebug' (tried: /usr/local/lib/php/pecl/20200930/xdebug (dlopen(/usr/local/lib/php/pecl/20200930/xdebug, 9): image not found), /usr/local/lib/php/pecl/20200930/xdebug.so (dlopen(/usr/local/lib/php/pecl/20200930/xdebug.so, 9): image not found)) in Unknown on line 0
PHP 8.0.9 (cli) (built: Jul 29 2021 17:21:21) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.9, Copyright (c) Zend Technologies
    with Zend OPcache v8.0.9, Copyright (c), by Zend Technologies

【问题讨论】:

    标签: php macos homebrew xdebug pecl


    【解决方案1】:

    我通过卸载 xdebug 和 php 解决了这个问题。我确保没有留下任何conf文件或目录。我用 rm -rf 删除了包含 php.ini 的 php 目录。

    比我刚刚用 brew 重新安装了 php。在安装 xdebug 之前,我首先检查了导致问题的 pecl 文件是否存在(确保它不存在),而不是使用 pecl 重新安装 xdebug。安装 xdebug 时没有出现错误。 php -v 给了我想要的完美响应。我猜这个问题首先是 pecl 文件干扰了 xdebug 的干净安装并导致了所有这些问题。

    PHP 8.0.10 (cli) (built: Aug 26 2021 15:36:17) ( NTS )
    Copyright (c) The PHP Group
    Zend Engine v4.0.10, Copyright (c) Zend Technologies
        with Xdebug v3.0.4, Copyright (c) 2002-2021, by Derick Rethans
        with Zend OPcache v8.0.10, Copyright (c), by Zend Technologies
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-25
      相关资源
      最近更新 更多