2012-06-06 219 views
3

我在Mac OSX的MAMP 1.9上運行pecl時遇到了很大的問題,並且花了一整天的時間解決了這個問題,所以我想我會分享它與其他人。如果你知道更好的方法來做到這一點,也許你可以告訴我?在Mac OSX上設置PHP擴展MAMP和Pecl安裝

基本上,問題是我需要在我的MAMP系統上安裝一些PHP擴展,爲了做到這一點,我需要pecl或編譯器來工作。雖然沒有任何功能。所以,我做的第一件事就是向upgrate MAMP 2.然後在此之後我加入了路徑MAMP的PECL到./profile打字到終端:

echo "export PATH=/Applications/MAMP/bin/php/php5.3.6/bin:$PATH" >> ~/.profile 

然後,您可以檢查您的呼籲是PECL指的是「正確」的版本(而不是Mac OSX上的內部之一)通過鍵入:

which pecl 
爲了能夠建立使用PECL我們需要準備構建環境,讓他們正確編譯擴展

現在。 A good advice is given on this page。總之,你需要從他們的網站上下載MAMP的庫,然後選擇與你當前激活版本相對應的PHP文件夾(在我的情況下,它是php-5.3.6)並將其複製到/ Applications/MAMP/bin/php /php5.3.6/include文件夾。之後,您應該進入該終端的文件夾並運行

./configure 

現在,只有安裝了XCode時,此功能纔有效。雖然問題出在即使安裝,但XCode的新版本默認不包含命令行工具,例如gcc編譯器(您需要)。所以你需要做的是通過XCode或Apple網站下載。一旦你下載這些命令行工具,你應該安裝gcc,並且./configure命令應該可以正常工作。

如果情況並非如此,您也可以安裝MacPort,然後使用它來安裝gcc和autoconf - 編譯所需的工具。

port install autoconf 

儘管可能它們已經在作爲XCode命令行工具的一部分工作。

在任何情況下,都做到這一點後,你會最終能夠在你的PHP源文件夾運行./configure,有它爲今後的工作準備,您可以通過鍵入檢查,如果它的功能:

pecl install uploadprogress 

(爲了有一個擴展初始化你可能會需要擴展=添加uploadprogress.so到你的php.ini文件)

這一切,我只是想我會打好這一切,因爲花了我幾個小時才找到正確的行動順序,我希望能爲別人節省時間。如果您有關於如何更有效地完成此任務的想法,請告訴我。

+2

好寫了,但是這不是一個問題。 – Perception

回答

0

我努力安裝,因爲MAMP庫不再公開可用。

但你可以在這裏下載最新的PHP版本 - :http://php.net/releases/index.php,提取它的內容,並在這裏插入。

該路徑對我來說是這樣/Applications/MAMP/bin/php/php5.5.3/include/php。我手動創建文件夾include,然後在php文件夾中提取下載內容。

之後。/ configure工作,然後我只是做pecl install uploadprogress。添加一個擴展到相關的php.ini文件(版本) - :擴展= uploadprogress.so到你的php.ini

乾杯 PRATIK