无法使用自制软件和 php7.4 安装 mcrypt

Posted

技术标签:

【中文标题】无法使用自制软件和 php7.4 安装 mcrypt【英文标题】:Cannot install mcrypt with homebrew and php7.4 【发布时间】:2021-03-13 03:21:20 【问题描述】:

操作系统:macOS 11(大苏尔)

自制:2.5.12

梨版本:1.10.12

我刚刚使用 homebrew (brew install php@7.4) 将我的 mac 上的 php 从 php7.1 升级到 php7.4。

然后,当我尝试安装 mcrypt 扩展时,我得到了错误:

configure: error: mcrypt.h not found. Please reinstall libmcrypt.
ERROR: `/private/tmp/pear/install/mcrypt/configure --with-php-config=/usr/local/homebrew/opt/php@7.4/bin/php-config --with-mcrypt' failed

这是我所做的:

    brew isntall mcrypt 安装 pecl sudo pecl install mcrypt -- 错误出现在这里。

我尝试了什么:

    找到 mcrypt.h 并将文件手动放到几个位置(基于 php-config),不起作用。

    清理了 brew 并重新安装/重新链接 mcrypt(libmcrypt),不起作用。

    删除了旧 brew 版本的遗留 mcrypt 文件。

【问题讨论】:

这个成功了吗?遇到同样的问题。 我放弃了用自制软件安装php7.4。终于用 MAMP Pro 获得了我的开发环境。 【参考方案1】:

我遇到了同样的问题。因此,在使用 brew install mcrypt 安装 libmcrypt 之后,似乎 configure 无法自动解析 mcrypt.h 的路径。指定 CPPFLAGS 或提供自制包含路径也不起作用。

但我通过在 Homebrew Cellar 中为 pecl 提供 mcrypt 的安装位置找到了一个适合我的解决方案。这是以下代码自动执行的操作:

pecl install mcrypt <<<"$(ls -d $(brew --prefix)/Cellar/mcrypt/* | tail -1)"

【讨论】:

非常感谢您!它就像魔术一样工作。在我的 Mac OS Catalina 上,通过 homebrew 安装了 php 7.4。【参考方案2】:

这里的问题是configure命令找不到homebrew安装的libmcrypt

你可以

    下载mcrypt-1.0.4的源码,然后cd到文件夹中

    运行“phpize”

    运行“./configure --with-mcrypt=/opt/homebrew/Cellar/mcrypt/2.6.8”,您可以在此处使用自制软件库的路径更改路径

    运行“make && make install”

    将 extension=mcrypt.so 添加到您的配置文件中

ps:使用php -i | grep "Loaded Configuration File"定位你的php配置文件

【讨论】:

以上是关于无法使用自制软件和 php7.4 安装 mcrypt的主要内容,如果未能解决你的问题,请参考以下文章

无法从自制软件安装 hdf5 库

卸载了macports,不能再使用自制软件了

无法在 127.0.0.1:6379 连接到 Redis:使用自制软件拒绝连接

来自自制软件的mac os上的git:致命:无法访问

无法通过自制 OSX Yosemite 安装 mcrypt

centos8安装php7.4