sudo pecl 安装 mongodb 问题 |未知类型名称“pcre_cache_entry”
Posted
技术标签:
【中文标题】sudo pecl 安装 mongodb 问题 |未知类型名称“pcre_cache_entry”【英文标题】:sudo pecl install mongodb problem | unknown type name 'pcre_cache_entry' 【发布时间】:2022-01-19 06:54:10 【问题描述】:我正在尝试在我的 MacOS Monterey 上为 php 8.0.13 安装 mongodb exentsion。
我尝试sudo pecl install mongodb
命令:然后得到以下错误。
/opt/homebrew/Cellar/php@8.0/8.0.13/include/php/ext/spl/spl_iterators.h:151:4: error: unknown type name 'pcre_cache_entry'
pcre_cache_entry *pce;
^
1 error generated.
make: *** [php_phongo.lo] Error 1
ERROR: `make' failed
哪个php:/opt/homebrew/bin/php
php -v:PHP 8.0.13 (cli) (built: Nov 28 2021 13:11:14) ( NTS ) Copyright (c) The PHP Group Zend Engine v4.0.13, Copyright (c) Zend Technologies with Zend OPcache v8.0.13, Copyright (c), by Zend Technologies
谁能帮我解决这个错误? 感谢您的关注!
【问题讨论】:
【参考方案1】:要使用 PECL 编译 MongoDB,您必须将 pcre2.h
复制到 php 的包含目录。
对于 php@8.0,你可以这样做,但是你必须在每次 PHP 发布之后或者如果你切换 PHP 版本时这样做。
pcre2_h="$(find "$(brew --cellar pcre2)" -name "pcre2.h")"
cp -f "$pcre2_h" "$(brew --cellar php@8.0)"/*/include/php/ext/pcre
为避免这种情况,我建议使用shivammathur/extensions brew tap 来安装 PHP 扩展。
【讨论】:
以上是关于sudo pecl 安装 mongodb 问题 |未知类型名称“pcre_cache_entry”的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Ubuntu 13.10 上安装 PHP PECL 扩展“SQLite”