Меню Рубрики

Как включить mcrypt mac os

Установка расширений PHP в Mac OS X

Как известно, в Mac OS X уже есть и apache и PHP, но что делать если требуется добавить какое-либо расширение в PHP? Можно, конечно, воспользоваться brew и получить еще одну параллельную версию PHP, а потом мучиться с ее настройкой, ради одного расширения. Я же опишу более правильный путь – собрать расширение для уже имеющегося в системе PHP.

Описание на примере mcrypt, который мне понадобился при установке laravel. Фактически ниже будет перевод поста http://stackoverflow.com/a/21803286, благодаря которому у меня все получилось. По аналогии с этим, фактически, ставится любое расширение для штатного PHP в Mac OS X.

1. autoconf

Для начала понадобится autoconf, у меня он уже был после установки Oracle Client и php-oci8, поэтому прежде чем копипастить код, стоит проверить наличие его у вас.

/mcrypt/dependencies/autoconf
$ curl -OL http://ftpmirror.gnu.org/autoconf/autoconf-latest.tar.gz
$ tar xzf autoconf-latest.tar.gz
$ cd autoconf-*/
$ ./configure –prefix=/usr/local
$ make
$ sudo make install

Должно вернуть /usr/local/bin/autoconf

2. libmcrypt

Как известно, php-mcrypt зависит от libmcrypt 🙂 Поэтому качаем исходники с SourceForge, например по ссылке http://sourceforge.net/projects/mcrypt/files/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.bz2/download. Переходим по ссылке и доходим до скачивания, копируем прямую ссылку на файл и вставляем ee в код ниже:

/mcrypt/dependencies/libmcrypt
$ curl -L -o libmcrypt.tar.bz2 ‘ ‘
$ tar xjf libmcrypt.tar.bz2
$ cd libmcrypt-*/
$ ./configure
$ make
$ sudo make install

3. php-mcrypt

Теперь собираем раcширение mcrypt, для этого понадобятся исходники установленного PHP. Для начала узнаем версию нашего PHP:

$ php –version # в моем случае 5.5.14

Далее как в предыдущем пункте, идем по ссылке http://www.php.net/get/php-5.5.14.tar.bz2/from/a/mirror и получаем прямую ссылку на скачивание файла. Если ваш PHP сильно устарел, то придется поискать его исходники, начать можно отсюда https://secure.php.net/releases/.

/mcrypt/php
$ curl -L -o php-5.5.14.tar.bz2 ‘


$ tar xjf php-*.tar.bz2
$ cd php-*/ext/mcrypt
$ phpize
$ ./configure # вот тут все сломается, если libmcrypt из предыдущего шага не установлен
$ make
$ make test
$ sudo make install

Теперь у нас появилось само расширение mcrypt.so, для пущей уверенности можно проверить это при помощи команды

$ sudo find / -iname mcrypt.so

Это обыщет ВСЮ файловую систему на предмет файла mcrypt.so, не быстрая операция.

4. Включаем расширение mcrypt

Проверяем, что у нас есть работающий php.ini

Если не выдает ничего, то у нас его нет, и его нужно создать, например вот так:

$ sudo cp /private/etc/php.ini.default /private/etc/php.ini

И теперь добавляем строку в php.ini, желательно рядом с тем местом, где описаны остальные расширения

Убедится, что расширение включено можно с помощью команды:

$ php -m | grep mcrypt

Которая должна вывести “mcrypt” и больше ничего.

Ну и теперь перезапускам apache, чтоб php-mcrypt был доступен веб серверу

$ sudo apachectl restart

Еще раз напомню, что аналогично устанавливается практически любое расширение, входящее в состав PHP.

Источник

How to enable mcrypt in php on Mac OSX 10.9?

Since I want to start learning Laravel, I need to install mcrypt in php. I’m on Mac OSX 10.9 and I installed apache and php manually (no mamp or anything like it) so I followed this guide to install mcrypt. The whole procedure works as expected (no errors), but after restarting the server using sudo apachectl restart I have a look at the output of phpinfo(), and I can’t find any mentioning of mcrypt.

Since I don’t think I had any errors in the process of compiling and installing, I don’t really know where to look for the mistake. Does anybody know what would be logical things to check for?

3 Answers 3

I have the same problem, on MAC OS X 10.9, no mcrypt library working. After some hours and many headaches (I’m not so skilled. ) I found this guide, and finally get it working on my local machine: http://jenssegers.be/blog/49/installing-the-php-mcrypt-extension-on-osx-10-9-mavericks

The passage I missed were to go in the ext/mcrypt dir of a new php downloaded package and then type:

cd php-5.4.17/ext/mcrypt/ /usr/bin/phpize ./configure make sudo make install

Источник

Как установить расширение mcrypt на mac os x yosemite (10.10)

я обновил свой Mac OS X до Yosemite, но делая это, я пишу всю свою среду разработки. Итак, теперь, чтобы запустить Laravel 4 на моем локальном apache, мне нужно установить расширение Mcrypt, но все, что я пробовал, я терплю неудачу. Даже шаги, которые работали на OS X Mavericks (10.9)

У кого-нибудь есть такая же проблема? Спасибо заранее.

4 ответов

я только что установил его прямо сейчас на моей установке Mavericks с помощью homebrew, и он работал удивительно хорошо. Не могу сказать, будет ли это работать так хорошо на Йосемити, но стоит попробовать..

доморощенного

системы MacPorts

проверьте версию PHP

Загрузите и установите соответствующий версия..

теперь фиктивное доказательство..

найдите, куда Macports поместил файл mcrypt.Итак, скопируйте его во все экземпляры . Если у вас есть эта структура каталогов в нескольких местах, скопируйте ее во все из них. Таким образом, каждый php / extensions / no-debug.. папка на вашем компьютере имеет копию mcrypt.so

определите, где ваш php.ini-файл и убедитесь, что это тот, который ваш фактически используя, потому что у вас может быть этот файл более чем в 1 месте. Сделай это со всеми php.ini файлы, которые вы найдете..

в этом файле найдите и раскомментируйте следующую строку. Если она закомментирована, раскомментируйте ее. Если его вообще нет в файле, добавьте его. В моем php по умолчанию.ini-файл я нашел это в строке 536:

Compile

настройка, сборка и установка

настройка, сборка и установка

Apache

независимо от того, какой метод вы использовали, чтобы установить его. Вы всегда должны перезапускать Apache, когда ваш сделанный.

Я просто сделал это и он установлен. MAMP etc. не установленный.

и, как ни странно, мне пришлось переустановить, чтобы установить его правильно.

однако это также переустановило PHP5.5 из источника, но неважно, все работает нормально с моей стороны.

У меня была та же проблема. Но я использую MAMP для своего местного развития. Итак, мне просто нужно было символически связать файл php с версией MAMP, и все работает.

при использовании homebrew попробуйте переустановить или повторно связать установку php.

Я уверен, что могу помочь вам встать и работать, так что просто дайте мне знать, если это не поможет.

Сначала установите libtool из homebrew, который является зависимостью в 10.10 Yosemite

затем CD в каталог php

и в ваш php.каталог д

затем, наконец, сделайте быстрый ls, чтобы увидеть, какие расширения вы используете:

если вы видите повторяющиеся записи, содержащие “mcrypt” вам нужно будет открыть одну из них, и закомментировать строку:

но только в одном из них. Для меня это был Мак-крипт.ini. Так..

Источник

idleberg / Install-Mcrypt.md

Setup php-mcrypt on macOS (and versions of Mac OS X)

These steps should have been mentioned in the prerequisites of the Laravel Installation Guide, since I’m surely not the only person trying to get Laravel running on macOS.

Install Mcrypt using Homebrew and PECL (comes with PHP)

Add this line to your php.ini :

Install Mcrypt using Homebrew

Add this line to /private/etc/php.ini :

You are ready to go!

Upgrade Mcrypt using Homebrew

This comment has been minimized.

Copy link Quote reply

juanmadurand commented Apr 4, 2017

This comment has been minimized.

Copy link Quote reply

pqt commented Oct 17, 2017

This. You get a gold damn start for this.

This comment has been minimized.

Copy link Quote reply

jonathandana commented Oct 28, 2017

is not working you can to help me.
thank you.

This comment has been minimized.

Copy link Quote reply

trunghaiy commented Dec 12, 2017

You could try “brew install homebrew/php/php71-mcrypt”

This comment has been minimized.

Copy link Quote reply

dlclarkGOB commented Dec 19, 2017

Trying to update PHP56: Get errors from brew indicating no formula found in taps .

This comment has been minimized.

Copy link Quote reply

danny-freeman commented Feb 2, 2018

This hasn’t worked for me. It installs it and I have added the line to my php.ini.default and the error still remains.

This comment has been minimized.

Copy link Quote reply

ericmargules commented Feb 19, 2018

This comment has been minimized.

Copy link Quote reply

raulcastro commented Feb 27, 2018

Wow! Thank you very much, it worked for me! with the command “brew install homebrew/php/php71-mcrypt” that @trunghaiy suggest

This comment has been minimized.

Copy link Quote reply

robhuijben commented Apr 9, 2018

homebrew/php is deprecated

This comment has been minimized.

Copy link Quote reply

emekaorjiani commented Apr 9, 2018

I kept getting that “Warning: Use php instead of deprecated homebrew/php/php72” Please does it mean that php72 is unstable or how can I recompile to remove the homebrew/php, Also can someone help me install php72-mcrypt

This comment has been minimized.

Copy link Quote reply

MatTeague commented Apr 17, 2018 •

I can’t get this to work for PHP 7.1. When I try brew install php71-mcrypt or brew install homebrew/php/php71-mcrypt I get the following error:

This comment has been minimized.

Copy link Quote reply

xnhinzkyx commented Apr 18, 2018

This comment has been minimized.

Copy link Quote reply

BramEsposito commented May 4, 2018

You need to install with PECL: pecl install mcrypt-1.0.1 (PHP 7.2)

This comment has been minimized.

Copy link Quote reply

dlaweb commented May 4, 2018 •

This comment has been minimized.

Copy link Quote reply

kervin commented May 21, 2018 •

For php 7.0, which version of mcrypt should I use?

It was so much easier previously with homebrew. dah!

This comment has been minimized.

Copy link Quote reply

syednaeem15191 commented Jun 5, 2018

‘brew install mcrypt’ is working for me and it give me the directory location of the install too, but i cannot find a .so file in there,

This comment has been minimized.

Copy link Quote reply

rogoit commented Jun 6, 2018

“but i cannot find a .so file in there” – same problem on me ;( Also tried to include the bin/mcrypt file with path and without.

This comment has been minimized.

Copy link Quote reply

javierenciso commented Jun 13, 2018

I couldn’t install mcrypt for php53 as it is deprecated today (june 2018), so I’ve got a copy from fellow of the .so for php53, and installed mcrypt with
brew install mcrypt
and then copied the files and added lines to php.ini to get it working with php53
source: https://blog.pheonixsolutions.com/install-mcrypt-php-macos-high-sierra-development-server/

Commenting this here for anybody with the same issue.

This comment has been minimized.

Copy link Quote reply

simplesirnet commented Jun 26, 2018

PHP 7.1.16 (cli) (built: Apr 1 2018 13:14:42) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies

wangrui$ brew install php70-mcryp
Updating Homebrew.
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> Updated Formulae
mariadb@10.2

Error: No available formula with the name “php70-mcryp”
==> Searching for a previously deleted formula (in the last month).
Warning: homebrew/core is shallow clone. To get complete history run:
git -C “$(brew –repo homebrew/core)” fetch –unshallow

Error: No previously deleted formula found.
==> Searching for similarly named formulae.
==> Searching local taps.
Error: No similarly named formulae found.
==> Searching taps.
==> Searching taps on GitHub.
Error: No formulae found in taps.
wangruideMBP:

Источник


Adblock
detector