首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Yosemite / El Capitan php-gd + mcrypt安装

Yosemite / El Capitan php-gd + mcrypt安装
EN

Stack Overflow用户
提问于 2014-10-21 18:32:49
回答 4查看 53.7K关注 0票数 51

如何在约塞米蒂10.10-PHP5.5.14构建中安装/启用 PHP mcrypt

请注意,以下步骤安装最新的PHP5.5.x

若要检查是否安装了gd和mcrypt,请使用$ php -m显示在模块中编译的内容,如果缺少所需模块,请继续,请参阅接受答案

GD

因此,Apple安装了GD (您正在使用他们的PHP构建,这很好),但不包括对PNG的支持。

您肯定缺少了“完整”gd (支持png )模块(如果:imagecreatefrompng()函数丢失了)。

"Call to undefined function imagecreatefrompng()"

马库特

使用接受答案安装brew,省略gd安装的部件(除非需要),并使用以下步骤:

  1. 做搜索- $ brew search mcrypt
  2. 选择您想要的PHP版本
  3. 安装- $ brew install php55-mcrypt
  4. 使用$ php -m | grep mcrypt确认

想在PHP版本之间切换吗?

查看brew-php交换机并按照说明执行。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-10-22 10:37:15

你说得对,Yosemite的内置PHP没有PNG和FreeType支持。

更新2015/10用于El Captian:与OSX10.11 El Capitan PNG支持已恢复,但FreeType仍然缺失。

溶液

使用可以轻松构建和安装完整的PHP,并在Apache的配置中替换它。如果您按照以下步骤执行,整个过程只需10分钟。

快速(但已完成)通过

(注1:我在这里使用的是Homebrew,这是OS的包管理系统。如果您熟悉MacPorts --另一个包管理器-您可以在该系统中获得相同的结果。还可以在您的计算机上并行使用我的Homebrew解决方案。)

(注2:如果您想阅读有关安装过程的所有细节,请查看自制基本安装自制PHP安装信息。但如果你遵循这些步骤,你真的不需要这样做。)

现在我们走..。

首先安装应用商店的Xcode。如果您已经拥有它,请再次检查App,以确保您已经获得了最新版本!

现在您需要安装Xcode命令行工具。为此,打开一个终端并输入:

代码语言:javascript
复制
xcode-select --install

下一个命令将安装系统:

代码语言:javascript
复制
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

脚本解释了它将做什么,然后在它做之前停下来。

要输入的下一个命令是一种系统状态测试:

代码语言:javascript
复制
brew doctor

这将检查Homebrew安装的基础知识。

我收到一个警告:“您安装了MacPorts或Fink : /opt/local/bin/port .”我成功地忽略了这一点。;)

现在,设置带有我们需要的依赖项的自制/dupes龙头:

代码语言:javascript
复制
brew tap homebrew/dupes

设置同样具有我们需要的依赖项的自制/版本点击:

代码语言:javascript
复制
brew tap homebrew/versions

然后运行以下命令:

代码语言:javascript
复制
brew tap homebrew/homebrew-php

现在您已经准备好最终构建PHP了。对于可用配置选项的列表,您可以运行以下其中之一:

代码语言:javascript
复制
brew options php55
brew options php56

但我只是用缺省值就行了。

要做到这一点,请输入(这两个中的一个),这取决于您的需要:

代码语言:javascript
复制
brew install php55
brew install php56

(这需要一段时间,请耐心点!)

在Yosemite (10.10.5)上安装php56 (5.6.x)时,有一个bug,请在github上看到这个问题。使用brew install php56 --without-ldap代替。

如果您得到一个类型的错误“无法找到OpenSSL的”,您没有安装Xcode命令行工具,正如我在开始时告诉您的那样。)继续,安装它们并重新运行最后一个命令。

PHP现在就构建好了,脚本将以有关如何使用它的一些细节结束:

打开httpd.conf (应该位于/private/etc/apache2/httpd.conf),并通过添加--这两行中的一个来启用,这取决于您刚刚安装的PHP版本:

代码语言:javascript
复制
LoadModule php5_module /usr/local/opt/php55/libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so

别忘了去评论现有的LoadModule php5_module.行,可能是从约塞米蒂自己的PHP版本!

重新启动Apache

代码语言:javascript
复制
sudo apachectl restart

您的新php.ini文件可以在: /usr/local/etc/php/5.5/php.ini中找到。

好好享受!

票数 81
EN

Stack Overflow用户

发布于 2014-10-25 05:20:26

来自@Jpsy的答案是好的,但是还有另一个选择,来自liip,这里的人。这是一个为约塞米蒂预先构建的PHP包(旧版本也能工作),但它只是一行代码

curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5

在那之后,一切都准备好了,如预期的那样工作。与安装相关的配置非常适合Symfony 2的开发,但它应该与其他用例一起工作。

最后,如果您也需要使用更新的PHP,但不想使用操作系统附带的PHP版本,那么您也可以在.bash_profile或类似的代码中添加以下内容:

export PATH=/usr/local/php5/bin:$PATH

票数 21
EN

Stack Overflow用户

发布于 2015-01-05 20:10:02

我没有足够的代表来发表评论,但是如果您正在为Yosemite使用OS ( App中的版本4),需要编辑的文件是:

/library/server/web/config/apache2/httpd_server_app.conf

我的现在看起来像这样,并且证实它在使用了来自自制的php5.6之后就可以工作了。

代码语言:javascript
复制
#LoadModule php5_module libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26493762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档