MAC下安装配置memcache的曲折路

  • 发表于
  • macOS

有个项目使用了ThinkPHP,直接clone来后支持一片空白,在检查配置的时候看到一段:

使用了memcache,但我本地是没有装这个模块的,于是开始安装,本以为也就一分钟的事,结果耗了我一天时间!

过程如下:

安装memcache

只要安装这个,所依赖的相关会自动一并安装。

安装后启动看看

正常启动。但是这个只是服务端,还需要安装PHP端的。

因为我使用了XAMPP,就用pecl安装:

这里报错

解决方法如下:

找到 SED="/usr/local/Library/ENV/4.3/sed" 改成 SED="/usr/bin/sed"

接着又报错:

看错是没有zlib导致,安装:

安装后发现还是不错,检查list明显已经有了zlib,什么原因?后找到解决方法:

要安装xcode命令行工具,至于原因原理,我也不明白~~。但是zlib错误不报了,又报如下错误:

心情糟糕,接连不断的意外错误,浪费了我很多时间,但不能放弃,继续找问题。

根据错误提示,网上说是因为PHP7已经不存在php_smart_str.h文件,变成了其它名字,有遇到同样问题的人尝试把该文件复制改名后依然无法编译通过,所以我就不试了。。问题真是PHP7吗? 虽然有人说git上有一个针对PHP7的分支版本可以试试,但我显然不想去入坑了。于是我果断的换版本,我换了PHP Version 5.6.24。

虽然XAMPP上已经换成了PHP5,但我再编译的时候依然有上面那个错误,再看:

引用的依然是PHP7,什么鬼,果断的brew list后发现一个PHP71,于是brew uninstall PHP71后,再次

好了,这回顺利编译通过。

往下的,你就修改php.ini,把模块加载进去就行了。