查閱很多資料,問題如下:
mac系統升級到yosemite後,php也自動升級,執行phpcms時發現後臺驗證碼顯示不出來。很明顯,缺少gd庫,需要重新編譯安裝php,其過程十分辛苦。
但使用brew安裝比較方便。
所以操作步驟如下:
1、安裝brew(已經安裝的略過)
2、安裝php5.6
3、安裝freetype,jpeg,libpng,gd,zlib
具體過程:
安裝homebrew
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"複製程式碼
這裡由於網速原因估計會比較慢
完成後,接下來自檢一下:
$ brew doctor Please note that these warnings are just used to help the Homebrew maintainers with debugging if you file an issue. If everything you use Homebrew for is working fine: please don't worry and just ignore them. Thanks! Warning: A newer Command Line Tools release is available. Update them from Software Update in the App Store.複製程式碼
出現一些警告資訊,其中也說明了如果brew執行正常就不用管它。CTRL+C退出,繼續往下
配置第三方源
因為homebrew沒有自帶php的包,所以要新增新的源進來:
$ brew tap homebrew/dupes
$ brew tap homebrew/versions $ brew tap homebrew/homebrew-php複製程式碼
安裝php
install安裝
$ brew install php56複製程式碼
安裝過程需要一段時間,等一下就可以了。
安裝freetype,jpeg,libpng,gd,zlib
brew rm freetype jpeg libpng gd zlib brew install freetype jpeg libpng gd zlib
先刪除之前的再安裝新的複製程式碼
然後建立連結
brew link --overwrite libpng freetype jpeg
#注意新增overwrite,否則可能會提示衝突 這裡可能提示目錄許可權錯誤問題:
Error: Could not symlink include/libpng16/png.h 執行命令:
sudo chmod -R 777 /usr/local/include/libpng16
sudo chmod -R 777 /usr/local/include/freetype2複製程式碼
配置apache支援新安裝的php
安裝的php在/usr/local/opt/php56目錄,apache這邊需要修改配置檔案,載入進新安裝的php模組。
$ LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so複製程式碼
不要忘記重新啟動下apache
$ sudo apachectl restart複製程式碼
重啟完成後,看看驗證碼是否顯示了