解决Mac Big Sur 下无法手动编译PHP扩展

在升级Big Sur 后,在编译php扩展执行 phpize 时,会报如下错误:

grep: /usr/include/php/main/php.h: No such file or directory
grep: /usr/include/php/Zend/zend_modules.h: No such file or directory
grep: /usr/include/php/Zend/zend_extensions.h: No such file or directory
Configuring for:
PHP Api Version:
Zend Module Api No:
Zend Extension Api No:

 

这是因为 /usr/include/ 目录根本不存在,即使安装 xcode SDK也是不行的

另外由于 mac 的根目录受到保护,之前网上的办法也是不可行,

当前可以用的解决方法

进入你要编译的目录,把phpize 拷贝进来

cp /usr/bin/phpize .

打开当前目录下的 phpize

查找如下代码段:

includedir=”eval echo ${prefix}/include/php”

替换为:

includedir=”$(xcrun –show-sdk-path)/usr/include/php”
执行当前目录下的 phpize:
./phpize

类似文章

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注