原因
具体原因就是扩展不支持arm64,需要x86_64运行,可以使用终端运营uname -a查看系统环境

如上图可能是arm64,也可能是arm64e 或者x86_64,
解决
我们根据报错具体处理,have 'arm64',need 'x86_64',说明当前是arm64,需要x86_64运行,我们重新编译安装一下,我们以集成环境mamp安装php扩展memcache为例:
1.下载支持php7.4的memcache扩展
https://pecl.php.net/get/memcache-4.0.5.2.tgz
2.将下载的拓展解压并移动到php扩展目录下
# 移动到php扩展目录下
mv memcache /Applications/MAMP/bin/php/php7.4.21/include/php/ext/
3.进入memcache目录开始编译,在编译命令前添加arch -x86_64命令依次执行
arch -x86_64 /Applications/MAMP/bin/php/php7.4.21/bin/phpize
arch -x86_64 ./configure --with-php-config=/Applications/MAMP/bin/php/php7.4.21/bin/php-config --with-zlib-dir=/Applications/MAMP/Library --enable-memcache-session=yes
arch -x86_64 make
arch -x86_64 make install
4.源码安装后将extension=memcache.so添加到php.ini文件即可安装成功
文章讲述了由于系统架构为arm64,而扩展不支持该架构,导致需要在MAMP环境中手动下载memcache扩展源码,并通过arch-x86_64命令重新编译以适应x86_64环境。步骤包括下载扩展、移动到PHP扩展目录、编译及安装,最后在php.ini中启用扩展。
2930

被折叠的 条评论
为什么被折叠?



