Linux

Pecl 符合 OSX 內置 PHP 的 .so 擴展而不是 MAMP

  • May 4, 2010

我已經安裝了 sphinx 二進製文件和庫,現在正在嘗試安裝 PECL sphinx 模組。

我的系統正在執行安裝了 MAMP 1.8.2 的 OS X 10.6。我嘗試使用以下命令安裝 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 版本而不是內置版本?

如果問題仍然存在:這是一個連結和一些附加資訊: http ://blog.achimbo.de/index.php/2010/05/03/installing-pecl-for-mamp/

乾杯,阿奇姆

引用自:https://serverfault.com/questions/122082