homebrew — установка Yosemite / El Capitan php-gd + mcrypt

Как установить / включить PHP-Г.Д. а также Mcrypt в Yosemite 10.10 — сборка PHP 5.5.14?

обратите внимание, что следующие шаги установить новейший PHP 5.5.x

Чтобы проверить, установлены ли у вас gd и mcrypt, используйте $ php -m для отображения скомпилированных в модулях, продолжайте, если вам не хватает нужных модулей и посмотрите принятый ответ.


GD

Итак, Apple установила GD (и вы используете их сборку PHP, что нормально), но не включила поддержку PNG.

Вы определенно не хватает «полный» GD (с поддержкой PNG) модуль, если:
imagecreatefrompng () функция отсутствует.

"Call to undefined function imagecreatefrompng()"

введите описание изображения здесь


Mcrypt

установить варку, используя принятый ответ и пропустите часть с установкой gd (если она вам не нужна) и выполните следующие шаги:

  1. сделать поиск — $ brew search mcrypt
  2. выберите версию PHP, которую вы хотите
  3. установить — $ brew install php55-mcrypt
  4. подтвердить использование $ php -m | grep mcrypt

Хотите переключаться между версиями PHP?

Проверять, выписываться заварить-PHP-коммутатор и следуйте инструкциям.

50

Решение

Вы правы, встроенный PHP Yosemite поставляется без поддержки PNG и FreeType.
Обновление 2015/10 для El Captian: С OS X 10.11 El Capitan PNG поддержка вернулась, но FreeType по-прежнему отсутствует.

Решение

Используйте менеджер пакетов Homebrew, чтобы безболезненно собрать и установить полный PHP и заменить его в конфигурации Apache. Весь процесс занимает около десяти минут, если вы выполните следующие шаги.

Быстрая (но полная) прогулка

(Примечание 1: я использую Homebrew здесь система управления пакетами для OS X. Если вы знакомы с MacPorts — другой менеджер пакетов — вы можете достичь тех же результатов с этой системой. Также возможно использовать моё решение Homebrew параллельно с существующей установкой MacPorts на вашем компьютере.)
(Примечание 2: Если вы хотите прочитать все подробности о процессе установки, посмотрите на Доморощенная базовая установка и Доморощенная установка PHP Информация. Но вам это действительно не понадобится, если вы выполните следующие действия.)

Теперь поехали …

Первая установка Xcode из App Store. Если он у вас уже есть, проверьте App Store еще раз, чтобы убедиться, что у вас последняя версия!

Теперь вам нужно установить Инструменты командной строки XCode. Для этого откройте терминал и введите:

xcode-select --install

Следующая команда установит систему менеджера пакетов Homebrew:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Сценарий объясняет, что он будет делать, а затем делает паузу, прежде чем он это сделает.

Следующая команда для ввода — это своего рода проверка состояния системы:

brew doctor

Это проверяет основы установки Homebrew.
Я получил предупреждение «У вас установлены MacPorts или Fink: / opt / local / bin / port …» которую я успешно проигнорировал. 😉

Теперь настройте кран homebrew / dupes, у которого есть зависимости, которые нам нужны:

brew tap homebrew/dupes

Настройте кран homebrew / version, который также имеет зависимости, которые нам нужны:

brew tap homebrew/versions

Затем выполните следующую команду:

brew tap homebrew/homebrew-php

Теперь вы готовы наконец построить PHP. Для получения списка доступных параметров конфигурации вы можете запустить один из них:

brew options php55
brew options php56

Но я был в порядке, просто используя значения по умолчанию.
Для этого введите ОДИН из этих двух, в зависимости от ваших потребностей:

brew install php55
brew install php56

(Это займет некоторое время, пожалуйста, будьте терпеливы!)

при установке php56 (5.6.x) на Yosemite (10.10.5) есть ошибка, пожалуйста, посмотрите это вопрос на github. использование brew install php56 --without-ldap вместо.

Если вы получили ошибку типа «Не могу найти OpenSSL» Вы не установили Инструменты командной строки Xcode, как я говорил вам в начале. 😉 Идем дальше, устанавливаем их и снова запускаем эту последнюю команду.

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

Откройте httpd.conf (должен быть расположен в /private/etc/apache2/httpd.conf) и включите PHP, добавив ОДИН из этих двух строк, в зависимости от того, какую версию PHP вы только что установили:

LoadModule php5_module /usr/local/opt/php55/libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so

Не забывай закомментировать любой существующий LoadModule php5_module … строка, которая может присутствовать в собственной версии PHP Yosemite!

Перезапустите Apache

sudo apachectl restart

Ваш новый файл php.ini можно найти в: /usr/local/etc/php/5.5/php.ini

Наслаждайтесь!

80

Другие решения

Ответ @Jpsy хороший, но есть еще один вариант, от ребят из liip, Вот. Это PHP-пакет, который предварительно собран для Yosemite (старые версии тоже работают), но это просто одна линия кода:

curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5

После этого все готово к работе как положено. Конфигурация, поставляемая с этой установкой, хорошо подходит для разработки Symfony 2, но она должна прекрасно работать с другими вариантами использования.

Наконец, если вам нужно использовать обновленный PHP CLI, но вы не хотите использовать версию PHP, которая поставляется с ОС, то вы также можете добавить в свой .bash_profile или аналог этой строки кода:

export PATH=/usr/local/php5/bin:$PATH

21

Мне не хватает представителя, чтобы комментировать, но если вы используете OS X Server для Yosemite (версия 4 из App Store), файл для редактирования:

/library/server/web/config/apache2/httpd_server_app.conf

Мой теперь выглядит так и подтвердил, что работает после использования php 5.6 от homebrew.

#LoadModule php5_module libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so
3

Стандартный Apache поставляется с Yosemite файл для обновления после

sudo brew install php55

в /etc/apache2/httpd.conf

Обратите внимание, что расположение php.ini также изменилось. Стандартная версия с Yosemite находится в /etc/php.ini, а версия с домашней версией — в /usr/local/etc/php/5.5/php.ini

0
По вопросам рекламы [email protected]