Linux
Pecl 符合 OSX 內置 PHP 的 .so 擴展而不是 MAMP
我已經安裝了 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/
乾杯,阿奇姆