Pecl 符合 OSX 内置 PHP 的 .so 扩展,但不符合 MAMP 的扩展

Pecl 符合 OSX 内置 PHP 的 .so 扩展,但不符合 MAMP 的扩展

我已经安装了 sphinx 二进制文件和库,现在正尝试安装 PECL sphinx 模块。

我的系统运行的是 OS X 10.6,安装了 MAMP 1.8.2。我尝试使用以下命令安装 sphinx:

sudo pecl install sphinx

PECL 命令输出以下内容:

running: phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626

上面的版本与执行 时列出的版本不匹配phpinfo()。看来 PECL 正在尝试遵守 PHP 的内置版本。

如果我忽略错误并继续,它将成功编译并将sphinx.so文件放置在:

/usr/lib/php/extensions/no-debug-non-zts-20090626/sphinx.so

但事实上应该是:

/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/

我尝试将 sphinx.so 文件复制到 MAMP 扩展目录,但是当我重新启动 apache 时 PHP 会显示以下警告:

PHP Startup: Unable to load dynamic library '/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/sphinx.so

我认为这是因为 MAMP 是 32 位的,而内置的 PHP 是 64 位的,所以 PECL 符合 64 位的要求。我可能完全错了,但我在谷歌上搜索这个主题时确实读到了这个。

有人知道如何让 PECL 映射到 PHP 的 MAMP 版本而不是内置版本吗?

答案1

如果问题仍然存在:这里有一个链接和一些附加信息: http://blog.achimbo.de/index.php/2010/05/03/installing-pecl-for-mamp/

干杯,阿奇姆

相关内容