加载 xdebug 安装失败 - xdebug.so,9 找不到合适的图像

Posted

技术标签:

【中文标题】加载 xdebug 安装失败 - xdebug.so,9 找不到合适的图像【英文标题】:Failed-loading xdebug installation - xdebug.so, 9 no suitable image found 【发布时间】:2018-05-29 04:29:09 【问题描述】:

安装xdebug扩展后如下

下载xdebug-2.6.0alpha1.tgz 解压下载的文件 运行:cd xdebug-2.6.0alpha1 运行:phpize 运行:./configure 运行:make 运行:cp modules/xdebug.so /usr/local/Cellar/php70/7.0.26_18/lib/php/extensions/no-debug-non-zts-20151012 编辑 /usr/local/etc/php/7.0/php.ini 并添加行 zend_extension = /usr/local/Cellar/php70/7.0.26_18/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so

运行 php -v 时出现错误

Failed loading /usr/local/Cellar/php70/7.0.26_18/lib/php/extensions
/no-debug-non-zts-20151012/xdebug.so:  
dlopen(/usr/local/Cellar/php70/7.0.26_18/lib/php/extensions
/no-debug-non-zts-20151012/xdebug.so, 9): no suitable image found.  
Did find:
/usr/local/Cellar/php70/7.0.26_18/lib/php/extensions/no-debug-non-zts-20151012/xdebug.so: 
stat() failed with errno=20

当我使用 Xdebug 分析 popinfo() 输出的服务时,它会要求完全相同的步骤。

不确定找不到合适的图片是什么意思。路径存在。任何人都可以知道如何解决它吗?

【问题讨论】:

您是否安装了多个版本的 PHP? 是的,很可能,在安装 xdebug 之前,但在通过 brew(版本 7.0.26_18)安装 php70 之后,当我检查 php -v 时,输出为 PHP 7.1.7 (cli) (built: jul 15 2017)。我上周将我的 mac 设置为出厂设置,所以它应该清理,除非 php 与其他下载一起出现。 路径中的20151012 部分是Zend API 版本(您可以从phpinfo()php -i 输出的标题中检查)。这是针对 PHP 7.0 的 .. 而您必须尝试以某种方式为 PHP 7.1 加载它... 我不需要PHP7.1,你知道如何摆脱它吗?或者我怎样才能改用 7.0.26 版本? 【参考方案1】:

我通过添加解决了问题

export PATH="$(brew --prefix homebrew/php/php70)/bin:$PATH"

在 .bash_profile 上。

PHP 7.1 是 OSX 10.13.2 自带的,所以默认路径设置为预打包的 php,会在 phpinfo 上显示错误。

【讨论】:

以上是关于加载 xdebug 安装失败 - xdebug.so,9 找不到合适的图像的主要内容,如果未能解决你的问题,请参考以下文章

Xdebug 错误:“加载 xdebug.so 失败:xdebug.so:无法打开共享对象文件:没有这样的文件或目录”

加载 xdebug.so 未定义符号失败:zend_empty_string

brew php54-xdebug 加载 xxx.xdebug.so 失败 找不到符号

httpd 加载 xDebug 失败:找不到过程入口点

加载/usr/lib/php7/modules/xdebug.so 失败:重新定位/usr/lib/php7/modules/xdebug.so 时出错:php_sprintf:找不到符号

Xdebug 安装失败,因为使用 MAMP 在 macOS Big Sur 上“phpize”失败