我试图在我的Mac M1上安装Xdebug,我按照此页面(https://xdebug.org/docs/install)安装。这是我遵循的步骤:
step1 =〉转到cmd:arch -x86_64 sudo pecl安装xdebug
step2 =〉转到php.ini删除这行代码
zend_extension="xdebug.so"
step 3 =〉转到php.ini添加这个
[xdebug]
zend_extension=/opt/homebrew/lib/php/pecl/20190902/xdebug.so
xdebug.mode=debug
xdebug.client_host=127.0.0.1
xdebug.client_port="9003"
step 4 =〉转到cmd:php -v
错误显示:
如何解决这个问题?谢谢
4条答案
按热度按时间btqmn9zl1#
这里发生的事情是,你构建了一个
x86_64
版本的扩展,但是homebrew可能使用了arm64e
架构。这些架构是不兼容的。您可以使用以下命令验证PHP的架构:
如果是
arm64e
,那么你需要文档中的原始命令:如果是
x86_64
,那么你需要为苹果的双架构修改命令:不管怎样,医生说:在Apple M1硬件上,您可能需要使用...,而不是必须。
eqoofvh92#
如果您遇到以下情况:
which php
结果显示Mach-O 64-bit executable arm64
。sudo pecl install xdebug
仍然导致错误的体系结构问题。试试这个:
注意:
arch -arm64
显示坏的cpu类型错误在我的情况下。j2qf4p5b3#
M1上的解决方案
如果
pecl install xdebug
不工作.运行它与sudo
命令.不要尝试arch x84命令,因为它不会工作了,因为php现在是建立在arm cpu体系结构.解决方案:
iyzzxitl4#
Macbook M1解决方案(截至2023 04/01)
arch -arm64 pecl install xdebug
ERROR: failed to mkdir /opt/homebrew/Cellar/php/8.2.4/pecl/20220829
,请运行rm /opt/homebrew/Cellar/php/8.2.4/pecl
,然后重新运行上述命令1.这将以一个路径成功结束。记下它,您很快就会需要它:
php --ini
1.打开所示的ini文件:
open /opt/homebrew/etc/php/8.2/php.ini
1.删除第一行(如果它说了一些关于Xdebug的内容)
1.导航到conf.d目录(从php --ini)
cd /opt/homebrew/etc/php/8.2/conf.d
touch xdebug.ini
open xdebug.ini
1.添加以下代码。将扩展路径编辑为步骤2中的扩展路径
运行
php --version
应该会显示一行关于xdebug的内容(类似于with Xdebug v3.2.1
)