如何在OS X本机安装的PHP上安装mcrypt?

时间:2013-08-24 03:23:02

标签: php macos php-extension mcrypt

我正在尝试在OS X Mountain Lion 10.8操作系统上安装mcrypt PHP扩展。这个操作系统附带Apache和PHP已经安装。然而,mcrypt扩展不随PHP一起提供。我想将mcrypt安装到我的机器附带的PHP版本中。

我不想使用Homebrew,Macports或任何类似的包管理器,除了我已经拥有的PHP之外,我不想安装另一个版本的PHP。我只是想将mcrypt插入到我的操作系统中的PHP中。我觉得这很有意义,而不是安装了同一个程序的多个版本,但我遇到的每个教程似乎都会立即说使用Homebrew / Macports,还有一些不教你如何安装新的PHP而不是使用我已经拥有的那个。

我开始按照此页面上的说明进行操作:http://www.coolestguyplanettech.com/how-to-install-mcrypt-for-php-on-mac-osx-lion-10-7-development-server/

  1. 我从Sourceforge下载了libmcrypt-2.5.8.tar.gz。
  2. 我使用以下命令提取内容:tar -zxvf libmcrypt-2.5.8.tar.gz
  3. 我进入了创建的libmcrypt-2.5.8目录并发出了以下命令:./configuremakesudo make install
  4. 现在该教程说要进入由教程告诉您安装的新的非本机版本的PHP创建的目录, OS X附带的本机版本该教程说要进入以下目录:cd ../php-5.3.13/ext/mcrypt/(这是我没有的目录),并运行phpize命令。我无法进入该目录,因为我正在使用OS X附带的本机PHP,所以我进入了libmcrypt-2.5.8目录,但是当我尝试运行phpize命令时,我得到了错误消息:Cannot find config.m4. Make sure that you run '/usr/bin/phpize' in the top level source directory of the module。但是,我在此目录中有文件acinclude.m4aclocal.m4。我不确定它们是否与phpize正在寻找的config.m4相关。

    我不知道该怎么办。也许我应该减少我的损失并使用Macports或Homebrew安装另一个PHP,但我真的更喜欢使用OS X捆绑的本机PHP。你能帮我弄清楚如何做到这一点吗?这对我很有帮助,并帮助我更好地理解PHP和扩展如何工作。谢谢!

1 个答案:

答案 0 :(得分:1)

  

"我真的更喜欢使用OS X捆绑的本机PHP。   你能帮我搞清楚怎么做吗?这真的对我有帮助   很多,并帮助我更好地了解PHP和扩展如何工作。"

与OSX捆绑在一起的PHP不再是" Native"比你要安装的任何其他版本。

你没有该目录,因为IIRC,OSX并没有提供PHP源代码,只是一个已编译的二进制文件和apache模块。

你只能在php扩展上运行phpize,你可以在PHP源代码下载(包括mcrypt扩展)。您下载的是PHP扩展程序将引用的C库(您可能还需要安装)(您不必担心这是如何发生的)。

如果您只想安装该扩展程序:

  1. 下载

  2. 提取并进入

  3. sudo phpize

  4. sudo ./configure& amp ;& amp; sudo make&& sudo make install

  5. 将扩展名= mcrypt.so(或生成的任何内容)添加到您的php config / php.ini并重新启动apache

  6. 这听起来像是一个了解计算机工作原理的好机会。这是几年前我为自己写的关于如何做到的一些文档:

    http://www.calvinfroedge.com/common-php-compile-configuration-options/(请注意,如果将其粘贴到终端中,博客中的格式可能不起作用,例如-with-mysql应为--with-mysql)

    此外,您不需要摆脱OSX附带的PHP安装。您可以将PHP源代码下载到一个全新的目录,编译它,备份旧的二进制文件,并使用符号链接结果'哪个php'到新安装或添加编译到源代码后生成的二进制文件。