Настройка 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 теперь установлен как делегат.