在OSX 10.8.2上安装mcrypt - 使用自制软件安装PHP 5.3.15

时间:2013-01-16 11:16:39

标签: php mcrypt

我已成功通过mcrypt安装homebrew,但我很难找到mcrypt.so的路径,将其作为php.ini中的扩展名包含在内。

mcrypt安装在/usr/local/Cellar/mcrypt/2.5.8。树:

-- AUTHORS
|-- ChangeLog
|-- INSTALL_RECEIPT.json
|-- NEWS
|-- README
|-- TODO
|-- bin
|   `-- libmcrypt-config
|-- include
|   |-- mcrypt.h
|   `-- mutils
|       `-- mcrypt.h
|-- lib
|   |-- libmcrypt.4.4.8.dylib
|   |-- libmcrypt.4.dylib -> libmcrypt.4.4.8.dylib
|   `-- libmcrypt.dylib -> libmcrypt.4.4.8.dylib
`-- share
    |-- aclocal
    |   `-- libmcrypt.m4
    `-- man
        `-- man3
            `-- mcrypt.3

我尝试在mcrypt.h中加入php.ini

extension="/usr/local/Cellar/mcrypt/2.5.8/include/mcrypt.h"

然后重新启动apache。 但它不起作用。

当我在终端中运行php时,我得到了:

PHP Warning:  PHP Startup: Unable to load dynamic library
'/usr/local/Cellar/mcrypt/2.5.8/include/mcrypt.h' - dlopen(/usr/local/Cellar/mcrypt/2.5.8/include/mcrypt.h, 9): 
image not found in Unknown on line 0

6 个答案:

答案 0 :(得分:48)

首先检查brew是否是最新的:
brew doctor

第二次安装基于php版本的mcrypt:
brew install php53-mcrypt

注意:最近版本的brew不需要以下第三步:

第三次打开php.ini文件并添加引用:
sudo vi /private/etc/php.ini
extension="/usr/local/Cellar/php53-mcrypt/5.3.25/mcrypt.so"

最后,重启apache:
sudo apachectl restart

答案 1 :(得分:22)

通过不同的建议想了几个小时后,this one为我工作(通过MacPorts安装):

Chris Brewer提供

http://macports.org.

下载并安装MacPorts

在终端中执行以下步骤:

强制MacPorts进行更新(仅在安装Apple的Xcode时才有效):

sudo port -v selfupdate

现在,安装memcached:

sudo port install php5-mcrypt

将新创建的mcrypt共享对象复制到Mac OS X的默认PHP5扩展目录中:

sudo cp /opt/local/lib/php/extensions/no-debug-non-zts-20090626/mcrypt.so /usr/lib/php/extensions/no-debug-non-zts-20090626/

接下来,您需要编辑php.ini以添加扩展名。找到短语Dynamic Extensions,并添加:

extension=mcrypt.so

最后,重启Apache:

sudo apachectl restart

答案 2 :(得分:9)

我用这个

解决了这个问题
brew install php54-mcrypt --without-homebrew-php

然后我将此行添加到/etc/php.ini

extension="/usr/local/Cellar/php54-mcrypt/5.4.24/mcrypt.so"

如果此文件不存在,您需要从/etc/php.ini.default复制它。另外,我用php -v检查我的php版本(它是5.4.x)

答案 3 :(得分:0)

我很欣赏你在这方面所做的工作!这对我有用。我在Mac上,它正在寻找xcode。尚未设置开发人员位置,因此我必须完成所有这些操作。

(解决开发者路径) How can I resolve "Error: No developer directory found at /Developer"?

  1. sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
  2. (签署使用XCODE的协议)

    1. sudo xcodebuild -license
    2. 最后按照上述步骤进行操作!

答案 4 :(得分:0)

this一样的小蛋糕。

$ brew install mcrypt
Warning: mcrypt-2.6.8 already installed
$ brew install php55-mcrypt
Warning: php55-mcrypt-5.5.20 already installed

然后测试一下:

$ php -m | grep mcrypt
mcrypt

$ php -i | grep mcrypt
Additional .ini files parsed => /usr/local/etc/php/5.5/conf.d/ext-mcrypt.ini,
Registered Stream Filters => zlib.*, bzip2.*, convert.iconv.*, string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, dechunk, mcrypt.*, mdecrypt.*
mcrypt
mcrypt support => enabled
mcrypt_filter support => enabled
mcrypt.algorithms_dir => no value => no value
mcrypt.modes_dir => no value => no value

答案 5 :(得分:0)

这可能有用......

  1. brew tap homebrew / homebrew-php
  2. brew install php56-mcrypt