Installing mcrypt on OSX 10.8.2 - PHP 5.3.15 with homebrew

Matanya picture Matanya · Jan 16, 2013 · Viewed 35.1k times · Source

I've successfully installed mcrypt via homebrew but I'm struggling to find the path to mcrypt.so to include it as an extension in php.ini.

mcrypt was installed at /usr/local/Cellar/mcrypt/2.5.8. Tree:

-- 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

I tried to include mcrypt.h in php.ini:

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

and then restarted apache. but it didn't work.

when I run php in the terminal I get:

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

Answer

pinxi picture pinxi · May 23, 2013

First check if brew is up-to-date:
brew doctor

Second install mcrypt based on php version:
brew install php53-mcrypt

NB: Step three below is not required on recent versions of brew:

Third open php.ini file and add reference:
sudo vi /private/etc/php.ini
extension="/usr/local/Cellar/php53-mcrypt/5.3.25/mcrypt.so"

Finally, restart apache:
sudo apachectl restart