轉自:http://www.111cn.net/sys/linux/118013.htm
MAMP PRo是一款適用于Mac操作系統的軟件,MAMP PRO是專業級版本的經典本地服務器環境的os x軟件。MAMP這幾個首字母代表蘋果的OSX系統上的Macintosh、Apache、MySQL和php,下面我們來看在MAMP 環境下為 php 添加 pcntl 擴展的例子。
前言:
pcntl 介紹
pcntl 擴展可以支持 PHP 的多線程操作。(非Unix類系統不支持此模塊)
phpize 介紹
phpize 可以用來給 PHP 動態的添加擴展。比如編譯 PHP 時忘記添加某擴展,后來想添加該擴展,即可以使用 phpize 動態的添加該擴展。
本文將介紹如何使用 phpize 給 Mac下的集成環境 MAMP 添加 PHP 的 pcntl 擴展。類 Unix 的環境都可以使用本方法安裝,注意靈活變通。
安裝:
下面演示的是給 MAMP的PHP 5.6.10版本添加 pcntl擴展。
下載和本地 PHP 版本對應的源碼包,地址為:
http://www.php.net/releases/然后按照如下步驟進行編譯:
# 解壓源碼包并初始化目錄$ tar -xzvf php-5.6.10.tar.gz$ mv php-5.6.10 php$ mkdir -p /applications/MAMP/bin/php/php5.6.10/include$ mv php /Applications/MAMP/bin/php/php5.6.10/include
# 檢測系統配置$ cd /Applications/MAMP/bin/php/php5.6.10/include/php$ ./configure
# 添加一些標志來告訴系統怎樣編譯。MAMP PHP已經建成這樣,如果不這樣做,編譯的共享對象將無法工作。$ MACOSX_DEPLOYMENT_TARGET=10.10$ CFLAGS="-arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp"$ CCFLAGS="-arch i386 -arch x86_64 -g -Os -pipe"$ CXXFLAGS="-arch i386 -arch x86_64 -g -Os -pipe"$ LDFLAGS="-arch i386 -arch x86_64 -bind_at_load"$ export CFLAGS CXXFLAGS LDFLAGS CCFLAGS MACOSX_DEPLOYMENT_TARGET
# 編譯 pcntl.so 文件$ cd ext/pcntl$ phpize$ ./configure$ make
# 將編譯出來的擴展文件pcntl.so 移動到php的擴展目錄$ cp modules/pcntl.so /Applications/MAMP/bin/php/php5.6.10/lib/php/extensions/no-debug-non-zts-20131226/
# 向php.ini 文件中添加該擴展$ echo "extension=pcntl.so" >> /Applications/MAMP/bin/php/php5.6.10/conf/php.ini
# pcntl現在應該已經啟用,要檢查是否安裝成功,只需運行:$ /Applications/MAMP/bin/php/php5.6.10/bin/php --ri pcntlpcntlpcntl support => enabled
如出現以上信息,則說明該擴展已安裝成功。
新聞熱點
疑難解答
圖片精選