php 在Mac m1上安装Xdebug失败

edqdpe6u  于 2023-04-04  发布在  PHP
关注(0)|答案(4)|浏览(170)

我试图在我的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

错误显示:

如何解决这个问题?谢谢

btqmn9zl

btqmn9zl1#

这里发生的事情是,你构建了一个x86_64版本的扩展,但是homebrew可能使用了arm64e架构。这些架构是不兼容的。
您可以使用以下命令验证PHP的架构:

file `which php`

如果是arm64e,那么你需要文档中的原始命令:

sudo pecl install xdebug

如果是x86_64,那么你需要为苹果的双架构修改命令:

arch -x86_64 sudo pecl install xdebug

不管怎样,医生说:在Apple M1硬件上,您可能需要使用...,而不是必须

eqoofvh9

eqoofvh92#

如果您遇到以下情况:

  • 文件which php结果显示Mach-O 64-bit executable arm64
  • sudo pecl install xdebug仍然导致错误的体系结构问题。

试试这个:

arch -arm64e sudo pecl install xdebug

注意:arch -arm64显示坏的cpu类型错误在我的情况下。

j2qf4p5b

j2qf4p5b3#

M1上的解决方案

如果pecl install xdebug不工作.运行它与sudo命令.不要尝试arch x84命令,因为它不会工作了,因为php现在是建立在arm cpu体系结构.
解决方案:

sudo pecl install xdebug
iyzzxitl

iyzzxitl4#

Macbook M1解决方案(截至2023 04/01)

  1. 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.这将以一个路径成功结束。记下它,您很快就会需要它:

Build process completed successfully
Installing '/opt/homebrew/Cellar/php/8.2.4/pecl/20220829/xdebug.so'
  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
  2. touch xdebug.ini
  3. open xdebug.ini
    1.添加以下代码。将扩展路径编辑为步骤2中的扩展路径
;XDebug
zend_extension="/opt/homebrew/Cellar/php/8.2.4/pecl/20220829/xdebug.so"
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.client_port=9003
;xdebug.mode=profile
xdebug.output_dir="/tmp"

运行php --version应该会显示一行关于xdebug的内容(类似于with Xdebug v3.2.1

相关问题