Установка mcrypt на OSX 10.8.2 – PHP 5.3.15 с homebrew

Я успешно установил 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 

Сначала проверьте, обновляется ли пиво:
brew doctor

Вторая установка mcrypt на основе версии php:
brew install php53-mcrypt

NB: Шаг третий ниже не требуется в последних версиях варева:

Третий открытый файл php.ini и добавьте ссылку:
sudo vi /private/etc/php.ini
extension="/usr/local/Cellar/php53-mcrypt/5.3.25/mcrypt.so"

Наконец, перезапустите apache:
sudo apachectl restart

Позаботившись часами с помощью разных советов, этот работал для меня (установлен через MacPorts):

Предоставлено Крисом Брюэром :

Загрузите и установите MacPorts с сайта http://macports.org.

В терминале выполняются следующие шаги:

Принудительно обновить MacPorts (будет работать, только если установлен Xcode от Apple):

 sudo port -v selfupdate 

Теперь установите memcached:

 sudo port install php5-mcrypt 

Скопируйте вновь созданный общий объект для mcrypt в папку расширения PHP5 по умолчанию для Mac OS X:

 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, чтобы добавить расширения. Найдите фразу «Динамические расширения» и добавьте:

 extension=mcrypt.so 

И, наконец, перезапустите Apache:

sudo apachectl restart

Я решил проблему с этим

 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 с php -v (И это было 5.4.x)

Я ценю работу, которую вы сделали на этом! Это сработало для меня. Я нахожусь на mac, и он искал xcode. Место разработчика не было установлено, поэтому я должен был все это сделать.

(ПОЗВОЛЯТЬ ПУТЬ РАЗВИТИЯ) Как я могу разрешить «Ошибка: в каталоге разработчиков нет / нет»?

  1. sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

(ПОДПИСАТЬ СОГЛАШЕНИЕ ПО ИСПОЛЬЗОВАНИЮ XCODE)

  1. sudo xcodebuild -license

Наконец, следуйте приведенным выше шагам!

Это может оказаться полезным …

  1. варить кран homebrew / homebrew-php
  2. brew install php56-mcrypt

Работал как кусок пирога с этим .

 $ 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