В логах веб-сервера следующие ошибки
libpng warning: Application was compiled with png.h from libpng-1.5.17libpng warning: Application is running with png.c from libpng-1.4.11libpng warning: Incompatible libpng version in application and library
FreeBSD, php52
Сломалась капча на сайте ” imagepng() – gd-png error: cannot allocate libpng main struct”
Исходя из ошибки получилось следующее:
скрипт отображения капчи использует libpng не выше версии 1.4.11, тогда как php52-gd по зависимости при обновлении установил libpng 1.5.17
Для того, чтобы откатиться на предыдущую версию, воспользуемся приложением portdowngrade.
Я не буду расписывать ни установку, ни то, как и что делает это приложение. По крайней мере не в формате текущей заметки.
Скачиваем последнюю ревизию порта png, где было обновление до 1.4.11
portdowngrade graphics/png r294269
Удаляем установленную версию png и производим установку скачанной версии.
Единственное затрудение в том, что найти архив нужной версии на серверах будет проблематично, хотя в официальном репозитарии она присутствует.
После переборки и установки перезапускаем Apache. капча работает.
Я еще переустанавливал php52-gd, но думаю, что можно обойтись без этого.
Сломалась капча на сайте ” imagepng() – gd-png error: cannot allocate libpng main struct”