我遇到了为php 7.1安装memcached模块的问题。我使用MacOS High Sierra和php@7.1使用自制软件安装。在使用命令
安装php的memcached模块期间pecl install memcached
我收到了错误:
检查zlib位置... configure:错误:memcached支持 需要ZLIB。使用--with-zlib-dir =指定前缀where ZLIB头和库位于ERROR: `/私有的/ tmp /梨/安装/分布式缓存/配置 --with-php-config=/usr/local/opt/php@7.1/bin/php-config --with-libmemcached-dir'失败
但我已经安装了zlib。我无法找到在homebrew存储库中更改后如何安装memcached模块的方法。
答案 0 :(得分:15)
pecl bundle memcached
phpize
brew list zlib
)./configure --with-zlib-dir=/usr/local/Cellar/zlib/1.2.11/
(将zlib路径替换为上一个命令中的路径)make
make install
/usr/local/etc/php/7.0/conf.d directory in a file called ext-memcached.ini
[memcached]
extension=/usr/local/Cellar/php@7.0/7.0.30_1/pecl/20151012/memcached.so
php -m
应该在输出列表中显示memcached 答案 1 :(得分:0)
您可以使用环境变量 PHP_ZLIB_DIR
来告诉它 zlib 的位置。
PHP_ZLIB_DIR=/usr/local/opt/zlib pecl install memcached
完全安装。
brew install zlib
yes no | PHP_ZLIB_DIR=$(brew --prefix zlib) pecl install memcached
答案 2 :(得分:0)
安装 memcached 先决条件
brew install pkg-config zlib
安装 pkg-config 和 zlibphp -v
告诉您哪个 php 版本对 cli 有效。pecl config-get ext_dir
会告诉您设置了哪些版本的配置文件。brew list zlib
时所需的 zlib 配置路径
使用 sudo pecl install memcached
安装
安装时会询问 zlib directory [no] :
粘贴 zlib 配置路径 /opt/homebrew/Cellar/zlib/1.2.11
示例 zlib directory [no] : /opt/homebrew/Cellar/zlib/1.2.11
重启你的 php 和 nginx/apache2
brew services restart php@7.2
brew services restart nginx
brew services restart apache2
您可以使用 php -m
检查扩展是否安装。
注意:我正在使用 MacPro M1 silicon chip
笔记本。使用 homebrew
安装。为解决这个问题付出了很多努力。