【发布时间】:2010-03-19 12:32:59
【问题描述】:
我已经安装了 MAMP,而它附带的 PHP 不是用 ncurses 编译的。我尝试使用 port 来安装 ncurses 并且它似乎已经存在于我的系统上,所以现在我想知道是否有办法让 PHP 使用它无需重新编译PHP --with-ncurses。
换句话说:PHP 是否可以配置为使用 ncurses 而无需重新编译?
【问题讨论】:
我已经安装了 MAMP,而它附带的 PHP 不是用 ncurses 编译的。我尝试使用 port 来安装 ncurses 并且它似乎已经存在于我的系统上,所以现在我想知道是否有办法让 PHP 使用它无需重新编译PHP --with-ncurses。
换句话说:PHP 是否可以配置为使用 ncurses 而无需重新编译?
【问题讨论】:
对于迟到的答案,我很抱歉,但这实际上可以通过 MAMP 轻松完成。
我在运行 OS X Snow Leopard 的 MacBook 上完成了此操作。
您的 MAMP 目录包含 php 源代码的 tar 文件。 MAMP 1.8.4 版附带 php-5.2.11.tar,位于:/Applications/MAMP/bin/php5/
之后您只需将 ncurses.so 扩展添加到 MAMP php.ini
这给了我:
ncurses
ncurses 支持 => 启用
ncurses 库版本 => 5.7
您也可以使用 PCNTL 扩展来做到这一点 ;) ;)
干杯!
【讨论】:
5.2.6 和 5.2.11 之间的扩展名可能没有变化。只需按照食谱,看看它是否有效(很可能有效)
According to the manual,必须编译ncurses。有些扩展可以编译为共享库(dll/so)并动态加载,但有些不能。似乎 ncurses 不能。
我不太了解mac包的结构,但它不是bsd/ports风格的安装吗?在这种情况下,只需找到包并配置 + 重新编译即可。
编辑:我看到 mamp 是一个二进制发行版。那你就不走运了。我建议您至少从源代码安装 php。能够安装新的扩展等非常有用。编译 php 相当简单,所以即使你对编译的东西并不完全有信心,你也应该能够通过它挤成一团。
【讨论】: