Настройка PNG для ImageMagick на сервере Linux

Я пытался запустить следующий скрипт на ImageMagick на сервере Linux

convert resized.png -gravity Center -crop 1024X768+0+0 +repage flower.png

но попали в следующую ошибку:

convert: no decode delegate for this image format `PNG' @ error/constitute.c/ReadImage/501.
convert: no images defined `flower.png' @ error/convert.c/ConvertImageCommand/3212.

Похоже, что нет делегата для PNG.

Когда я бегу:

identify -version

Я получаю этот результат, который показывает, что делегат PNG не установлен:

Version: ImageMagick 6.9.0-4 Q16 x86_64 2015-01-25       http://www.imagemagick.org
Copyright: Copyright (C) 1999-2015 ImageMagick Studio LLC
Features: DPC OpenMP
Delegates (built-in): bzlib freetype jpeg lcms tiff x zlib

Насколько я могу судить, я установил libpng на моем сервере.

Как настроить делегат PNG для ImageMagick на моем сервере Linux?

Я установил 'yum', но не 'apt-get'.

1 ответ

Я сделал намного больше поиска и нашел этот ответ.

Похоже, ImageMagick не знал, какую библиотеку искать.

Я сделал

locate libpng

и обнаружил, что он был расположен в

/usr/lib64/

Затем я смог запустить команды на этой странице (из каталога ImageMagick):

http://www.imagemagick.org/discourse-server/viewtopic.php?t=12366

./configure --enable-shared
make libdir=/usr/lib64
make libdir=/usr/lib64 install
./configure --enable-shared=yes --x-libraries=/usr/lib64 --without-perl
make
make install

Потом работает

identify -version

показал следующие результаты:

Version: ImageMagick 6.9.0-4 Q16 x86_64 2015-01-30
 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2015 ImageMagick Studio LLC
Features: DPC OpenMP
Delegates (built-in): bzlib freetype jng jpeg lcms png tiff x zlib

который показывает, что PNG теперь установлен как делегат.

Другие вопросы по тегам