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

Как установить / включить php-gd и 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. install – $ brew install php55-mcrypt
  4. подтвердите использование $ php -m | grep mcrypt $ php -m | grep mcrypt

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

Зайдите на brew-php-switcher и следуйте инструкциям.

Related of "Установка Yosemite / El Capitan php-gd + mcrypt"

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

Решение

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

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

(Примечание 1: Я использую Homebrew здесь, систему управления пакетами для OS X. Если вы знакомы с MacPorts – другим диспетчером пакетов – вы можете получить те же результаты с этой системой. Также можно использовать мое решение для дома, существующая установка MacPorts на вашем компьютере.)
(Примечание 2: Если вы хотите прочитать все детали процесса установки, посмотрите базовую установку Homebrew и информацию об установке Homebrew 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 …», которые я проигнорировал успешно. 😉

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

 brew tap homebrew/dupes 

Настройте ключ доморощенного / версии, который также имеет необходимые зависимости:

 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

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

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

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

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

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

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

У меня недостаточно комментариев, чтобы сделать комментарий, но если вы используете 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 

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

 sudo brew install php55 

находится в /etc/apache2/httpd.conf

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