你是对的,Yosemite 的内置 PHP 不支持 PNG 和 FreeType。
El Capitan 2015/10 更新:OS X 10.11 El Capitan 又恢复了对 PNG 的支持,但仍然缺少 FreeType。
Solution
使用 Homebrew 包管理器轻松构建和安装完整的 PHP 并在 Apache 的配置中替换它。如果您按照以下步骤操作,整个过程只需大约十分钟。
快速(但完整)的演练
(注1:我使用Homebrew这里是 OS X 的包管理系统。如果您熟悉MacPorts– 另一个包管理器 – 您可以使用该系统获得相同的结果。也可以将我的 Homebrew 解决方案与计算机上现有的 MacPorts 安装并行使用。)
(注 2:如果您想了解有关安装过程的所有详细信息,请查看自制基本安装和自制 PHP 安装信息。但如果您按照以下步骤操作,您实际上就不需要它了。)
现在我们走吧...
首次安装来自 App Store 的 Xcode。如果您已经安装了它,请再次检查 App Store,以确保您已获得最新版本!
现在您需要安装Xcode 命令行工具。为此,请打开终端并输入:
xcode-select --install
下一个命令将安装 Homebrew 包管理器系统:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
该脚本解释了它将做什么,然后在执行之前暂停。
下一个要输入的命令是一种系统状态测试:
brew doctor
这将检查 Homebrew 安装的基础知识。
我收到警告“您安装了 MacPorts 或 Fink:/opt/local/bin/port ...”我成功地忽略了它。 ;)
现在设置具有我们需要的依赖项的自制程序/欺骗水龙头:
brew tap homebrew/dupes
设置自制程序/版本水龙头,它也有我们需要的依赖项:
brew tap homebrew/versions
然后运行以下命令:
brew tap homebrew/homebrew-php
现在您已准备好最终构建 PHP。要获取可用配置选项的列表,您可以运行以下命令之一:
brew options php55
brew options php56
但我只使用默认值就可以了。
为此,请输入ONE这两个,取决于您的需要:
brew install php55
brew install php56
(这需要一段时间,请耐心等待!)
在 Yosemite (10.10.5) 上安装 php56 (5.6.x) 时出现错误,请参阅此issue在 github 上。使用brew install php56 --without-ldap
反而。
如果您收到类型错误“找不到 OpenSSL”你还没有像我一开始告诉你的那样安装 Xcode 命令行工具。 ;) 继续,安装它们并重新运行最后一个命令。
PHP 现已构建,脚本将以有关如何使用它的一些详细信息结束:
打开httpd.conf(应位于/private/etc/apache2/httpd.conf)并通过添加启用PHPONE这两行的内容取决于您刚刚安装的 PHP 版本:
LoadModule php5_module /usr/local/opt/php55/libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so
别忘了注释掉任何现有的加载模块 php5_module...Yosemite 自己的 PHP 版本中可能存在这一行!
重新启动阿帕奇
sudo apachectl restart
您的新 php.ini 文件可以在以下位置找到:/usr/local/etc/php/5.5/php.ini
Enjoy!