【问题标题】:XDebug not working; extension_dir duplicatedXDebug 不工作; extension_dir 重复
【发布时间】:2011-01-13 14:30:53
【问题描述】:

我正在尝试让 XDebug 与在 OSX Snow Leopard 上随 MacPorts 一起安装的 PHP 5.2.11 一起工作。 我用 go-pear 安装了 Pear,然后用 PECL 安装了 XDebug。我复制了 xdebug.so 以便它编译到 extension_dir,/opt/local/lib/php/extensions/no-debug-non-zts-20060613/。 我有一个 xdebug.ini 文件(根据 phpinfo)正在正确加载。 xdebug.ini 调用:

zend_extension="/opt/local/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so"

它似乎显示了错误的堆栈跟踪,但如果我尝试添加任何 xdebug 设置,例如 xdebug.collect_params,它甚至不会这样做。我的 PHP 错误日志显示:

PHP Startup: Unable to load dynamic library '/opt/local/lib/php/extensions/no-debug-non-zts-20060613//opt/local/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so'

请注意,它在那里有两次 extension_dir。它在 phpinfo 中正确显示。我尝试使用 'extension' 代替 'zend_extension' 和 'xdebug.so' 而不是完整路径,但它做同样的事情。

有谁知道为什么在模块查找中路径被加倍,或者这里还有什么问题?谢谢!

【问题讨论】:

    标签: php xdebug


    【解决方案1】:

    我也有同样的问题。我所做的是使用 macports xdebug 包: $ sudo 端口安装 php5-xdebug

    【讨论】:

    • 谢谢!在看到您的答案之前,我使用 sudo port install php52 +mysql5 +pear +debug 重新安装了 PHP(我认为 +debug 可能与 xdebug 有关,但我不认为现在是。我添加了 +pear 因为 XDebug 是 Pear/ PECL 扩展。)仅此一项 + xdebug.so 不起作用......奇怪的错误消失了,但模块没有加载。所以我按照你的建议安装了 php5-xdebug,但也没有用。进一步研究,我意识到 +debug(转换为 --enable-debug 用于配置)需要 zend_extension_debug 而不是 zend_extension ——并且(使用完整的 .so 路径)有效。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2021-11-28
    • 2018-11-01
    • 2011-02-27
    • 2011-09-05
    • 1970-01-01
    • 2011-12-25
    • 2016-04-08
    • 1970-01-01
    相关资源
    最近更新 更多