您的位置:首页 > 其它

GraphicsMagick 安装后不支持jpg及png格式图片的解决办法

2018-01-08 16:21 357 查看
1. 下载最新版GraphicsMagick-1.3.18

2. ./configure 后的结果

GraphicsMagick is
configured as follows. Please verify that this

configuration matches your expectations.

Host system type : x86_64-unknown-linux-gnu

Build system type : x86_64-unknown-linux-gnu

Option            Configure option              Configured value

-----------------------------------------------------------------

Shared libraries  --enable-shared=no            no

Static libraries  --enable-static=yes           yes

GNU ld            --with-gnu-ld=yes             yes

Quantum depth     --with-quantum-depth=8        8

Delegate Configuration:

BZLIB             --with-bzlib=yes              no

DPS               --with-dps=yes                no

FlashPIX          --with-fpx=no                 no

FreeType 2.0      --with-ttf=yes                no

Ghostscript       None                          gs (unknown)

Ghostscript fonts --with-gs-font-dir=default    none

Ghostscript lib   --with-gslib=no               no

JBIG              --with-jbig=yes               no

JPEG v1           --with-jpeg=yes               no (需安装 jpeg delegate library)

JPEG-2000         --with-jp2=yes                no

LCMS              --with-lcms=yes               no

Magick++          --with-magick-plus-plus=yes   yes

PERL              --with-perl=no                no

PNG               --with-png=yes               
no(需安装 png delegate library)

TIFF              --with-tiff=yes               no

TRIO              --with-trio=yes               no

Windows fonts     --with-windows-font-dir=      none

WMF               --with-wmf=yes                no

X11               --with-x=                     no

XML               --with-xml=yes                no

ZLIB              --with-zlib=yes               yes

make

sudo make install

3.Delegate Library安装

JPEG delegate library

> gm convert 470f1bb8c5a98.jpg -resize
100x100 out.jpg

gm convert: No decode delegate for this image format (470f1bb8c5a98.jpg).

官方建议:This exception indicates that an external delegate library or its headers were not available when ImageMagick was built. To add support for the image format, download and install the requisite delegate library and its header files and reconfigure,
rebuild, and reinstall ImageMagick. As an example, lets add support for the JPEG image format. First we install the JPEG RPMS:

原因是没有安装jpeg的包,这个可以在之前configure的结果中看出来,此时GraphicsMagick需要重新configure及build。

1)在GraphicsMagick官方网站提供的delegates下载页面中找到jpeg的包:libjpeg-6b.tar.gz

2)安装jpeg delegate library. configure -> make -> sudo make install

3)重新安装GraphicsMagick (configure时会发现jpeg已安装)

 

PNG delegate library

gm convert: No decode delegate for this image format (ben3.png).

1)在GraphicsMagick官方网站提供的delegates下载页面下载libpng-1.6.2.tar.gz 

2)安装png delegate library. configure -> make -> sudo make install

3)重新安装GraphicsMagick (configure时会发现png已安装)

注: 由于之前安装过一次libpng-1.5.2,rm /usr/local/lib/libpng*,在重新安装了1.4.7后,仍有错误:gm: error while loading shared libraries: libpng14.so.14: cannot open shared object file: No such file or directory.

运行sudo ldconfig进行自动清理。

特别说明:

如果系统之前已经下载安装了其他版本的libpng和jpeg,可以参考这篇文章在配置GM的时候去配置相关参数:Linux下编译安装GraphicsMagick及PHP扩展gmagick
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: