在 Mavericks (10.9) 上安装 mcrypt 库时遇到问题
Posted
技术标签:
【中文标题】在 Mavericks (10.9) 上安装 mcrypt 库时遇到问题【英文标题】:Trouble Installing mcrypt library on Mavericks (10.9) 【发布时间】:2013-11-12 06:46:30 【问题描述】:我能够在 Mountain Lion 上成功安装 mcrypt 扩展,但在 Mavericks 上安装扩展时遇到了困难。
作为参考,我正在关注本指南:http://www.coolestguidesontheplanet.com/install-mcrypt-php-mac-osx-10-9-mavericks-development-server/
我注意到的唯一不一致之处是,通过从命令行运行 php -v
,我显示的是 PHP 版本 5.3.15 - 而 Web 服务器似乎运行的是 5.4.17。 我下载了 5.4.17 来编译 mcrypt。
基本上,一切都按计划进行,直到最后。我没有将共享扩展安装到新目录/usr/lib/php/extensions/no-debug-non-zts-20100525
,而是收到一条消息:
Installing shared extensions: /usr/local/lib/php/extensions/no-debug-non-zts-20090626/
编辑:
问题似乎是 Web 服务器的 PHP 是使用模块 API 编译的:20100525 并且系统仍在使用 5.3.15(即 API:20090626),因此出现错误。
我假设您不能(轻松)更新 PHP 的系统版本。我需要做什么才能使模块和 PHP API 匹配?
提前感谢您的帮助。
【问题讨论】:
【参考方案1】:我注意到 php 5.4.17 位于 /usr/bin,而 5.3.15 位于 /usr/local/bin,
所以我:
在 /usr/local/bin 中创建了指向 /usr/bin 中的 phpize 和 php 的符号链接。 在我确认 phpize -v 和 php 指向正确的版本后,只需重新编译 mcrypt 扩展即可。这样做后,扩展安装在正确的目录中:Installing shared extensions: /usr/lib/php/extensions/no-debug-non-zts-20100525/
回想起来,我需要做的就是将 /usr/bin 添加到我的路径变量中,以便它在 /usr/local/bin 之前检查 /usr/bin。
【讨论】:
【参考方案2】:供其他人找到此线程的参考..
这是 10.8 和 10.9 的自动 Mcrypt 安装程序。 http://topicdesk.com/downloads/mcrypt/mcrypt-download
这样安装不到一分钟。
【讨论】:
@Philip007 在安装之前,您必须有 php.ini。sudo cp /etc/php.ini.default /etc/php.ini
以上是关于在 Mavericks (10.9) 上安装 mcrypt 库时遇到问题的主要内容,如果未能解决你的问题,请参考以下文章
在 OS X 10.9 (Mavericks) 上安装 Java
在 OS X Mavericks 10.9 上安装 apache 2.4
Aspell 不会在 OS X 10.9 (Mavericks) 上构建
pip 在 Mac OS X Mavericks (10.9) 上引发 stdio.h not found 错误