今天安装一个开源项目发现缺少fileinfo扩展,发现MxSrvs软件并没有这个扩展,以下记录一下安装步骤。
1. 下载对应版本的php源码
www.php.net/distributio… [替换版本号,我的版本是7.4.6]
2. 解压后进入fileinfo目录
cd /Users/reedzhen/Downloads/php-7.4.6/ext/fileinfo
3. 用MxSrvs自带的phpize和php-config来构建和编译扩展
# 在fileinfo目录下执行下面的指令
/Applications/MxSrvs/bin/php/bin/phpize
我在这里执行报错了,然后去安装 autoconf。
brew search autoconf
brew install autoconf
安装好后继续执行 /Applications/MxSrvs/bin/php/bin/phpize,然后执行
# --with-php-config后面接php-config的路径
./configure --with-php-config=/Applications/MxSrvs/bin/php/bin/php-config
然后执行编译,modules目录会多出来一个.so文件
make && make install
4. 复制.so文件到集成环境php下的ext中即可
从 fileinfo/modules 中复制 .so 文件到集成环境下的 php 的ext(/Applications/MxSrvs/bin/php/ext)目录下,然后编辑 php.ini 文件启用扩展即可。