2014-10-18 3 views
16

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

Существует одна строка в phpinfo(), который выглядит как проблема: '--with-Пурнефтегаз-реж = нет'

phpinfo()

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

Enter image description here

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

+2

Я также повышен до Yosemite и получил немного этим. Я исправил это, установив пользовательский php, но он не идеален. Что-нибудь, что мы можем сделать, чтобы заставить Apple исправлять gd и png в будущих обновлениях? – rjcarr

+2

в случае, если кто-либо из участников задается вопросом, откуда пришли все голоса - [этот вопрос обсуждался на мета] (http://meta.stackoverflow.com/questions/275103/why-did-i-fail-an-audit -for-flagging-as-off-topic-when-question-asks-about-f /) –

+0

Похоже, вы обновили либо вашу библиотеку GD, либо php-gd-модуль до версии без поддержки PNG, скомпилированной в. Если это так, вам нужно будет перекомпилировать оскорбительный элемент с поддержкой или обновить до сторонней версии с поддержкой. –

ответ

23

Вот еще один вариант, от ребят из liip, here , Это PHP пакет, который поставляется с предварительно построен для Йосемити (более старые версии тоже работает), но это только одна линия кода:

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

+0

пошел так, очень безболезненно и легко сделать. работает как шарм –

+0

действительно опрятный подход ... – dlthp

+1

Это обновляет PHP, который до 5.6 для сервера Apache, который сломает много кодовых баз. Как вы вернулись после этого? – John

5

Я должен был исправить это, снова установив PHP 5.5 через Homebrew. Довольно безболезненно: можно найти

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

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

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

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

+1

Чтобы помочь другим, мне также пришлось «заваривать обновление» и «заваривать обновление libpng», чтобы заставить это работать. – Rikki

1

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

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

 Смежные вопросы

  • Нет связанных вопросов^_^