osx yosemite — после обновления PHP больше не поддерживает операции PNG

После обновления до Mac OS X 10.10 (Yosemite) и запуска Apache с поддержкой PHP все работает как прежде, за исключением любых операций с изображениями над файлами PNG. Я получаю Call to undefined function imagecreatefrompng(), в то время как любая операция с файлами JPEG работает. Так что GD присутствует, но не для PNG.

Есть одна строка в phpinfo() это выглядит как проблема: ‘—with-png-dir = no’

phpinfo ()

Раздел GD от phpinfo():

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

Как заставить включенный PHP работать с файлами PNG?

16

Решение

Вот еще один вариант, от ребят из 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

23

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

Мне пришлось это исправить, установив PHP 5.5 снова через Homebrew. Довольно безболезненно:

https://github.com/Homebrew/homebrew-php

Инструкции по установке можно найти здесь: https://github.com/Homebrew/homebrew-php#usage

Я использовал команду brew install php55

Не забудьте обновить ваш httpd.config — инструкции будут показаны в конце установки homebrew.

5

Как сказал @jtotheh, установка полной версии PHP с скомпилированной поддержкой PNG и FreeType — это путь.

Если вы не хотите возиться с этим процессом, я подготовил подробные пошаговые инструкции в качестве ответа на аналогичный вопрос: https://stackoverflow.com/a/26505558/430742

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