admin 管理员组

文章数量: 1086019


2024年4月23日发(作者:java搭建socket)

钜码IT培训

Homebrew配置安装PHP

由于Homebrew仓库的更新,将homebrew/homebrew-php合并到homebrew/core中,同

时也去掉了php各种扩展包.甚至php安装包的名称也做了统一修改

以php7.1为例,以前的安装方式是

brewinstallphp71

而现在需要按照brew的统一包名称规范

brewinstallphp@7.1

其中homebrew包管理工具的安装,这里不做多的介绍

对比以前的方式,现在安装的php会附加更多的扩展,比如mysql,gd相关的扩展都会

统一安装进来.对于一般的初学者,确实方便了很多,但对于使用框架的开发人员,反而

会因为找不到其他扩展而烦恼,比如redis

如果我们按照以前的方式安装redis扩展

brewinstallphp71-redis

从结果来看,这个安装包是找不到了,那么这个时候,我们有两种做法

通过源码编译安装

通过pecl安装

这里,我们选择第二种方式,毕竟我们不想处理php和扩展包的版本依赖问题

钜码IT培训

如果使用pecl安装,首先得安装pear,这个大家可以自行安装,但这里有个好消息告

诉大家,pecl工具已经在安装php@7.1时,帮我们也一并安装了,所以这里直接使用就好

上面展示的是php的bin目录,可以看到pecl工具

另外有个小插曲,在mac系统版本为10.13之后,系统默认的php版本是7.1.16,如

果你通过brew安装了php,要确认,你在终端中的php命令一定是你通过brew安装的,如

果不是,可以按照下面方法

如果你熟悉hombrew的文件结构,就会知道安装的可执行文件默认都在

/usr/local/bin,并且以软连接的形式存在,那么我们可以把php和pecl加进去

cd/usr/local/bin

ln-s../Cellar/php@7.1/7.1.20/bin/phpphp

ln-s../Cellar/php@7.1/7.1.20/bin/peclpecl

钜码IT培训

注意改成自己的路径,修改完成后,重新打开终端

php--version

这个时候,可以安装我们的扩展了

peclinstallredis

可以看到,pecl会自动帮我们解决依赖关系,下载合适的扩展版本

但事情不总是那么顺利,在mac下使用pecl,一定要注意权限问题,特别是pecl的下

载目录和缓存目录的权限,可以通过下面命令查看

peclconfig-show

钜码IT培训

需要将文件的owner设置为自己,否则会一直提示权限问题

sudochown-Rmagina:wheel/tmp/pear

之后就可以正常安装了,另外,我们这里的redis扩展还需要依赖igbinary,这个也

是核心包中没有的,所以还需要先安装它

peclinstalligbinary

再安装redis扩展

peclinstallredis

当我们安装完redis扩展后,可以确认模块是否加载成功

php-m|grepr

钜码IT培训

在配置文件中确认

grep-rn'redis'/usr/local/etc/php/

确定so文件的位置,可以通过查看pecl的编译后的文件路径

peclconfig-show

ls/usr/local/lib/php/pecl/20160303

可以看到我们通过pecl编译安装的扩展文件在里面


本文标签: 安装 扩展 文件 编译 依赖