I can understand since it was CentOS, but with Debian I thought it might come handy if you choose to install Imagemagick from source. NAH! – never think like that. For one of our project, my colleague requested me to upgrade this package I thought it will be good and easy, just shoot the command “apt-get install imagemagick” phew – I got no updates.
Debian Lenny has a latest stable release of Imagemagick 6.6.0 and the current version is 6.6.9, AAH!.
Like I said I’ve always had a good experience with Imagemagick, thought it would be a good experience installing a package by source especially Imagemagick🙂.
Install (below) delegates before installing ImageMagick.
As-usual, I went to Imagemagick website and found 6.6.7 from their archive.
tar -zxf ImageMagick-6.6.7-10.tar.gz
./configure LDFLAGS=’-L/usr/local/lib -R/usr/local/lib’ –with-xml ### configuring imagemagick with xml will enable you to convert ### an image from a remote server to local. ### for ex: convert http://example.com/sample.jpg test.jpg make
Simple, isn’t – everything went well until I tested the commands.
I ran a simple command:
convert sample.jpg test.jpg
convert: no decode delegate for this image format sample.jpg
I was literally LAUGHING – because I love challenges.
Before searching or trying to solve the problem, I wanted to understand root-cause of the error and what is meaning of the word “delegate” in the error. I queried in Google for “imagemagick delegates” – got some bunch of results. The very first results is the index of all the available delegates in imagemagick. Imagemagick delegates are the libraries used by Imagemagick to convert images from one form to the other. In other words, It relies on a number of delegate programs to support certain image formats.
There were quite a few delegates: jpeg, tiff, png, xml, zlib, ghostscript, freetype, etc.
This becomes a mandatory for Imagemagick to work with conversion, choose those delegates that you may want for your job. We wanted “jpeg, tiff, png, xml, zlib, ghostscript, freetype” delegates and you have to install delegates FIRST then Imagemagick. Yes, I had to uninstall imagemagick again to get these delegates useful for imagemagick.
REMEMBER: You have to install delegates first and then Imagemagick
You can find ImageMagick delegates from: http://www.imagemagick.org/download/delegates/
Example: wget http://www.imagemagick.org/download/delegates/jpegsrc.v8.tar.gz
Repeat the above steps for any other delegate that you wish to install.