1

我已经安装了MAMP并且它附带的PHP没有用ncurses编译。我尝试使用 port 来安装ncurses,它似乎已经存在于我的系统上,所以现在我想知道是否有办法让PHP使用它而无需重新编译PHP --with-ncurses

换句话说:可以将PHP配置为使用ncurses而无需重新编译吗?

4

2 回答 2

6

对于迟到的答案,我很抱歉,但这实际上可以使用 MAMP 轻松完成。

我在运行 OS X Snow Leopard 的 MacBook 上完成了这项工作。

您的 MAMP 目录包含 php 源代码的 tar 文件。MAMP 1.8.4 版附带 php-5.2.11.tar,位于:/Applications/MAMP/bin/php5/

  1. cd /应用程序/MAMP/bin/php5/
  2. 焦油 -xvf php-5.2.11.tar
  3. cd php-5.2.11/ext/ncurses
  4. /Applications/MAMP/bin/php5/bin/phpize
  5. ./configure --with-php-config=/Applications/MAMP/bin/php5/bin/php-config
  6. 制作
  7. 进行安装

之后,您只需将 ncurses.so 扩展添加到 MAMP php.ini

  1. 回声“extension=ncurses.so”>>/Applications/MAMP/conf/php5/php.ini
  2. php -i | grep 诅咒

这给了我:

诅咒

ncurses 支持 => 启用

ncurses 库版本 => 5.7

您也可以使用 PCNTL 扩展来执行此操作;);)

干杯!

于 2010-03-19T04:32:59.907 回答
1

根据手册,必须编译ncurses。一些扩展可以编译为共享库(dll/so)并动态加载,但有些不能。似乎ncurses不能。

我不太了解mac包的结构,但它不是bsd/ports风格的安装吗?在这种情况下,只需找到包并配置+重新编译它。

编辑:我看到 mamp 是一个二进制发行版。那你就不走运了。我建议您至少从源代码安装 php。能够安装新的扩展等非常有用。编译 php 相当简单,所以即使你对编译的东西并不完全自信,你应该能够挤过它。

于 2009-08-06T09:46:37.263 回答