]> granicus.if.org Git - imagemagick/blob - Install-unix.txt
(no commit message)
[imagemagick] / Install-unix.txt
1 Download & Unpack
2   
3   ImageMagick builds on a variety of Unix and Unix-like operating systems
4   including Linux, Solaris, FreeBSD, Mac OS X, and others. A compiler is
5   required and fortunately almost all modern Unix systems have one. Download
6   ImageMagick.tar.gz from ftp.imagemagick.org or its mirrors and verify the
7   distribution against its message digest.
8   
9   Unpack the distribution it with this command:
10   
11     $magick> tar xvfz ImageMagick.tar.gz
12   
13   Now that you have the ImageMagick Unix/Linux source distribution unpacked,
14   let's configure it.
15   
16 Configure
17   
18   The configure script looks at your environment and decides what it can cobble
19   together to get ImageMagick compiled and installed on your system. This
20   includes finding a compiler, where your compiler header files are located
21   (e.g. stdlib.h), and if any delegate libraries are available for ImageMagick
22   to use (e.g. JPEG, PNG, TIFF, etc.). If you are willing to accept configure's
23   default options, and build from within the source directory, you can simply
24   type:
25   
26     $magick> cd ImageMagick-7.0.0
27      $magick> ./configure
28   
29   Watch the configure script output to verify that it finds everything that
30   you think it should. Pay particular attention to the last lines of the script
31   output. For example, here is a recent report from our system:
32   
33   ImageMagick is configured as follows. Please verify that this configuration
34   matches your expectations.
35   
36     Host system type: x86_64-unknown-linux-gnu
37     Build system type: x86_64-unknown-linux-gnu
38     
39                       Option                     Value
40     ----------------------------------------------------------------------------
41     Shared libraries  --enable-shared=yes               yes
42     Static libraries  --enable-static=yes               yes
43     Module support    --with-modules=yes                yes
44     GNU ld            --with-gnu-ld=yes         yes
45     Quantum depth     --with-quantum-depth=16   16
46     High Dynamic Range Imagery
47                       --enable-hdri=no          no
48     
49     Delegate Configuration:
50     BZLIB             --with-bzlib=yes          yes
51     Autotrace         --with-autotrace=yes      yes
52     DJVU              --with-djvu=yes           no
53     DPS               --with-dps=yes            no
54     FlashPIX          --with-fpx=yes            no
55     FontConfig        --with-fontconfig=yes     yes
56     FreeType          --with-freetype=yes               yes
57     GhostPCL          None                      pcl6 (unknown)
58     GhostXPS          None                      gxps (unknown)
59     Ghostscript       None                      gs (8.63)
60     result_ghostscript_font_dir='none'
61     Ghostscript fonts --with-gs-font-dir=default
62     Ghostscript lib   --with-gslib=yes          no (failed tests)
63     Graphviz          --with-gvc=yes            yes
64     JBIG              --with-jbig=              no
65     JPEG v1           --with-jpeg=yes           yes
66     JPEG-2000         --with-jp2=yes            yes
67     LCMS v1           --with-lcms=yes           yes
68     LCMS v2           --with-lcms2=yes          yes
69     LQR               --with-lqr=yes            no
70     Magick++          --with-magick-plus-plus=yes       yes
71     OpenEXR           --with-openexr=yes                yes
72     PERL              --with-perl=yes           /usr/bin/perl
73     PNG               --with-png=yes            yes
74     RSVG              --with-rsvg=yes           yes
75     TIFF              --with-tiff=yes           yes
76     result_windows_font_dir='none'
77     Windows fonts     --with-windows-font-dir=
78     WMF               --with-wmf=yes            yes
79     X11               --with-x=                 yes
80     XML               --with-xml=yes            yes
81     ZLIB              --with-zlib=yes           yes
82     
83     X11 Configuration:
84           X_CFLAGS        =
85           X_PRE_LIBS      = -lSM -lICE
86           X_LIBS          =
87           X_EXTRA_LIBS    =
88     
89     Options used to compile and link:
90       PREFIX          = /usr/local
91       EXEC-PREFIX     = /usr/local
92       VERSION         = 6.4.8
93       CC              = gcc -std=gnu99
94       CFLAGS          = -fopenmp -g -O2 -Wall -W -pthread
95       MAGICK_CFLAGS   = -fopenmp -g -O2 -Wall -W -pthread
96       CPPFLAGS        = -I/usr/local/include/ImageMagick
97       PCFLAGS         = -fopenmp
98       DEFS            = -DHAVE_CONFIG_H
99       LDFLAGS         = -lfreetype
100       MAGICK_LDFLAGS  = -L/usr/local/lib -lfreetype
101       LIBS            = -lMagickCore -llcms -ltiff -lfreetype -ljpeg
102                         -lfontconfig -lXext -lSM -lICE -lX11 -lXt -lbz2 -lz
103                         -lm -lgomp -lpthread -lltdl
104       CXX             = g++
105       CXXFLAGS        = -g -O2 -Wall -W -pthread
106   
107   You can influence choice of compiler, compilation flags, or libraries of the
108   configure script by setting initial values for variables in the configure
109   command line. These include, among others:
110   
111     CC
112         Name of C compiler (e.g. cc -Xa) to use.
113
114     CXX
115         Name of C++ compiler to use (e.g. CC).
116
117     CFLAGS
118         Compiler flags (e.g. -g -O2) to compile C code.
119
120     CXXFLAGS
121         Compiler flags (e.g. -g -O2) to compile C++ code.
122
123     CPPFLAGS
124         Include paths (.e.g. -I/usr/local) to look for header files.
125
126     LDFLAGS
127         Library paths (.e.g. -L/usr/local) to look for libraries systems that
128         support the notion of a library run-path may require an additional
129         argument in order to find shared libraries at run time. For example,
130         the Solaris linker requires an argument of the form -R/path. Some
131         Linux systems will work with -rpath /usr/local/lib, while some other
132         Linux systems who's gcc does not pass -rpath to the linker, require
133         an argument of the form -Wl,-rpath,/usr/local/lib.
134
135     LIBS
136         Extra libraries (.e.g. -l/usr/local/lib) required to link.
137   
138   Here is an example of setting configure variables from the command line:
139   
140     $magick> ./configure CC=c99 CFLAGS=-O2 LIBS=-lposix
141   
142   Any variable (e.g. CPPFLAGS or LDFLAGS) which requires a directory path must
143   specify an absolute path rather than a relative path.
144   
145   Configure can usually find the X include and library files automagically,
146   but if it doesn't, you can use the --x-includes=path and --x-libraries=path
147   options to specify their locations.
148   
149   The configure script provides a number of ImageMagick specific
150   options. When disabling an option --disable-something is equivalent to
151   specifying --enable-something=no and --without-something is equivalent to
152   --with-something=no. The configure options are as follows (execute configure
153   --help to see all options).
154   
155   ImageMagick options represent either features to be enabled, disabled,
156   or packages to be included in the build. When a feature is enabled (via
157   --enable-something), it enables code already present in ImageMagick. When a
158   package is enabled (via --with-something), the configure script will search
159   for it, and if is properly installed and ready to use (headers and built
160   libraries are found by compiler) it will be included in the build. The
161   configure script is delivered with all features disabled and all packages
162   enabled. In general, the only reason to disable a package is if a package
163   exists but it is unsuitable for the build (perhaps an old version or not
164   compiled with the right compilation flags).
165   
166   Here are the optional features you can configure:
167   
168     --enable-shared
169       build the shared libraries and support for loading coder and process
170       modules. Shared libraries are preferred because they allow programs
171       to share common code, making the individual programs much smaller. In
172       addition shared libraries are required in order for PerlMagick to be
173       dynamically loaded by an installed PERL (otherwise an additional PERL
174       (PerlMagick) must be installed.
175   
176       ImageMagick built with delegates (see MAGICK PLUG-INS below) can pose
177       additional challenges. If ImageMagick is built using static libraries (the
178       default without --enable-shared) then delegate libraries may be built as
179       either static libraries or shared libraries. However, if ImageMagick is
180       built using shared libraries, then all delegate libraries must also be
181       built as shared libraries. Static libraries usually have the extension
182       .a, while shared libraries typically have extensions like .so, .sa, or
183       .dll. Code in shared libraries normally must compiled using a special
184       compiler option to produce Position Independent Code (PIC). The only
185       time this not necessary is if the platform compiles code as PIC by
186       default.
187   
188       PIC compilation flags differ from vendor to vendor (gcc's is
189       -fPIC). However, you must compile all shared library source with the
190       same flag (for gcc use -fPIC rather than -fpic). While static libraries
191       are normally created using an archive tool like ar, shared libraries
192       are built using special linker or compiler options (e.g. -shared for gcc).
193   
194       If --enable-shared is not specified, a new PERL interpreter (PerlMagick)
195       is built which is statically linked against the PerlMagick extension. This
196       new interpreter is installed into the same directory as the ImageMagick
197       utilities. If --enable-shared is specified, the PerlMagick extension is
198       built as a dynamically loadable object which is loaded into your current
199       PERL interpreter at run-time. Use of dynamically-loaded extensions is
200       preferable over statically linked extensions so use --enable-shared if
201       possible (note that all libraries used with ImageMagick must be shared
202       libraries!).
203   
204     --disable-static
205       static archive libraries (with extension .a) are not built. If you
206       are building shared libraries, there is little value to building static
207       libraries. Reasons to build static libraries include: 1) they can be
208       easier to debug; 2) clients do not have external dependencies (i.e.
209       libMagick.so); 3) building PIC versions of the delegate libraries may
210       take additional expertise and effort; 4) you are unable to build shared
211       libraries.
212   
213     --disable-installed
214       disable building an installed ImageMagick (default enabled).
215   
216       By default the ImageMagick build is configured to formally install
217       into a directory tree. This the most secure and reliable way to install
218       ImageMagick. Use this option to configure ImageMagick so that it doesn't
219       use hard-coded paths and locates support files by computing an offset path
220       from the executable (or from the location specified by the MAGICK_HOME
221       environment variable. The uninstalled configuration is ideal for binary
222       distributions which are expected to extract and run in any location.
223   
224     --enable-ccmalloc
225       enable 'ccmalloc' memory debug support (default disabled).
226   
227     --enable-prof
228       enable 'prof' profiling support (default disabled).
229   
230     --enable-gprof
231       enable 'gprof' profiling support (default disabled).
232   
233     --enable-gcov
234    
235      enable 'gcov' profiling support (default disabled).
236     --disable-openmp
237       disable OpenMP (default enabled).
238   
239       Certain ImageMagick algorithms, for example convolution, can achieve
240       a significant speed-up with the assistance of the OpenMP API when
241       running on modern dual and quad-core processors.
242   
243     --disable-largefile
244       disable support for large (64 bit) file offsets.
245   
246       By default, ImageMagick is compiled with support for large files (>
247       2GB on a 32-bit CPU) if the operating system supports large files. Some
248       applications which use the ImageMagick library may also require support
249       for large files. By disabling support for large files via
250       --disable-largefile, dependent applications do not require special
251       compilation options for large files in order to use the library.
252   
253   Here are the optional packages you can configure:
254
255     --enable-legacy-support
256       install legacy command-line utilities (default disabled).
257   
258     --with-quantum-depth
259       number of bits in a pixel quantum (default 16).
260   
261       Use this option to specify the number of bits to use per pixel quantum
262       (the size of the red, green, blue, and alpha pixel components). For
263       example, --with-quantum-depth=8 builds ImageMagick using 8-bit quantums.
264       Most computer display adapters use 8-bit quantums. Currently supported
265       arguments are 8, 16, or 32. We recommend the default of 16 because
266       some image formats support 16 bits-per-pixel. However, this option is
267       important in determining the overall run-time performance of ImageMagick.
268   
269       The number of bits in a quantum determines how many values it may
270       contain. Each quantum level supports 256 times as many values as the
271       previous level. The following table shows the range available for various
272       quantum sizes.
273   
274         Quantum Depth  Valid Range (Decimal)  Valid Range (Hex)
275             8             0-255                  00-FF
276            16             0-65535                0000-FFFF
277            32             0-4294967295           00000000-FFFFFFFF
278         
279       Larger pixel quantums can cause ImageMagick to run more slowly and to
280       require more memory. For example, using sixteen-bit pixel quantums can
281       cause ImageMagick to run 15% to 50% slower (and take twice as much memory)
282       than when it is built to support eight-bit pixel quantums.
283   
284       The amount of virtual memory consumed by an image can be computed by
285       the equation (5 * Quantum Depth * Rows * Columns) / 8. This an important
286       consideration when resources are limited, particularly since processing
287       an image may require several images to be in memory at one time. The
288       following table shows memory consumption values for a 1024x768 image:
289   
290         Quantum Depth   Virtual Memory
291              8               3MB
292             16               8MB
293             32              15MB
294   
295     --enable-hdri
296       accurately represent the wide range of intensity levels (experimental).
297   
298     --enable-osx-universal-binary
299       build a universal binary on OS X.
300   
301     --without-modules
302       disable support for dynamically loadable modules.
303   
304       Image coders and process modules are built as loadable modules which are
305       installed under the directory [prefix]/lib/ImageMagick-X.X.X/modules-QN
306       (where 'N' equals 8, 16, or 32 depending on the quantum depth) in the
307       subdirectories coders and filters respectively. The modules build option
308       is only available in conjunction with --enable-shared. If --enable-shared
309       is not also specified, support for building modules is disabled. Note that
310       if --enable-shared and --disable-modules are specified, the module loader
311       is active (allowing extending an installed ImageMagick by simply copying
312       a module into place) but ImageMagick itself is not built using modules.
313   
314     --with-cache
315       set pixel cache threshold (defaults to available memory).
316   
317       Specify a different image pixel cache threshold with this option. This
318       sets the maximum amount of heap memory that ImageMagick is allowed to
319       consume before switching to using memory-mapped temporary files to store
320       raw pixel data.
321   
322     --without-threads
323       disable threads support.
324   
325       By default, the ImageMagick library is compiled with multi-thread
326       support. If this undesirable, specify --without-threads.
327   
328     --with-frozenpaths
329       enable frozen delegate paths.
330   
331       Normally, external program names are substituted into the delegates.xml
332       configuration file without full paths. Specify this option to enable
333       saving full paths to programs using locations determined by configure.
334       This useful for environments where programs are stored under multiple
335       paths, and users may use different PATH settings than the person who
336       builds ImageMagick.
337   
338     --without-magick-plus-plus
339       disable build/install of Magick++.
340   
341       Disable building Magick++, the C++ application programming interface
342       to ImageMagick. A suitable C++ compiler is required in order to build
343       Magick++. Specify the CXX configure variable to select the C++ compiler
344       to use (default g++), and CXXFLAGS to select the desired compiler
345       optimization and debug flags (default -g -O2). Antique C++ compilers
346       will normally be rejected by configure tests so specifying this option
347       should only be necessary if Magick++ fails to compile.
348
349     --with-package-release-name
350       encode this name into the shared library name (see libtools -release
351       option).
352   
353     --without-perl
354       disable build/install of PerlMagick, or
355   
356       By default, PerlMagick is conveniently compiled and installed as part
357       of ImageMagick's normal configure, make, sudo make install process. When
358       --without-perl is specified, you must first install ImageMagick, change to
359       the PerlMagick subdirectory, build, and finally install PerlMagick. Note,
360       PerlMagick is configured even if --without-perl is specified. If the
361       argument --with-perl=/path/to/perl is supplied, /../path/to/perl is be
362       taken as the PERL interpreter to use. This important in case the perl
363       executable in your PATH is not PERL5, or is not the PERL you want to use.
364   
365     --with-perl=PERL
366       use specified Perl binary to configure PerlMagick.
367   
368     --with-perl-options=OPTIONS
369       options to pass on command-line when generating PerlMagick's Makefile
370       from Makefile.PL.
371   
372       The PerlMagick module is normally installed using the Perl interpreter's
373       installation PREFIX, rather than ImageMagick's. If ImageMagick's
374       installation prefix is not the same as PERL's PREFIX, then you
375       may find that PerlMagick's sudo make install step tries to install
376       into a directory tree that you don't have write permissions to. This
377       common when PERL is delivered with the operating system or on Internet
378       Service Provider (ISP) web servers. If you want PerlMagick to install
379       elsewhere, then provide a PREFIX option to PERL's configuration step
380       via "--with-perl-options=PREFIX=/some/place". Other options accepted by
381       MakeMaker are 'LIB', 'LIBPERL_A', 'LINKTYPE', and 'OPTIMIZE'. See the
382       ExtUtils::MakeMaker(3) manual page for more information on configuring
383       PERL extensions.
384   
385     --without-bzlib
386       disable BZLIB support.
387   
388     --without-dps
389       disable Display Postscript support.
390   
391     --with-fpx
392       enable FlashPIX support.
393   
394     --without-freetype
395       disable TrueType support.
396   
397     --with-gslib
398       enable Ghostscript library support.
399   
400     --without-jbig
401       disable JBIG support.
402   
403     --without-jpeg
404       disable JPEG support.
405   
406     --without-jp2
407       disable JPEG v2 support.
408   
409     --without-lcms
410       disable lcms (v1.1X) support
411
412     --without-lcms2
413       disable lcms (v2.X) support
414   
415     --without-lzma
416       disable LZMA support.
417
418     --without-png
419       disable PNG support.
420   
421     --without-tiff
422       disable TIFF support.
423   
424     --without-wmf
425       disable WMF support.
426   
427     --with-fontpath
428       prepend to default font search path.
429   
430     --with-gs-font-dir
431       directory containing Ghostscript fonts.
432   
433       Specify the directory containing the Ghostscript Postscript Type 1 font
434       files (e.g. n022003l.pfb) so that they can be rendered using the FreeType
435       library. If the font files are installed using the default Ghostscript
436       installation paths (${prefix}/share/ghostscript/fonts), they should
437       be discovered automagically by configure and specifying this option is
438       not necessary. Specify this option if the Ghostscript fonts fail to be
439       located automagically, or the location needs to be overridden.
440   
441     --with-windows-font-dir
442       directory containing MS-Windows fonts.
443   
444       Specify the directory containing MS-Windows-compatible fonts. This not
445       necessary when ImageMagick is running under MS-Windows.
446   
447     --without-xml
448       disable XML support.
449   
450     --without-zlib
451       disable ZLIB support.
452   
453     --without-x
454       don't use the X Window System.
455   
456       By default, ImageMagick uses the X11 delegate libraries if they are
457       available. When --without-x is specified, use of X11 is disabled. The
458       display, animate, and import sub-commands are not included. The remaining
459       sub-commands have reduced functionality such as no access to X11 fonts
460       (consider using Postscript or TrueType fonts instead).
461   
462     --with-share-path=DIR
463       Alternate path to share directory (default share/ImageMagick).
464   
465     --with-libstdc=DIR
466       use libstdc++ in DIR (for GNU C++).
467   
468   While configure is designed to ease installation of ImageMagick, it often
469   discovers problems that would otherwise be encountered later when compiling
470   ImageMagick. The configure script tests for headers and libraries by
471   executing the compiler (CC) with the specified compilation flags (CFLAGS),
472   pre-processor flags (CPPFLAGS), and linker flags (LDFLAGS). Any errors are
473   logged to the file config.log. If configure fails to discover a header or
474   library please review this log file to determine why, however, please be
475   aware that *errors in the config.log are normal* because configure works by
476   trying something and seeing if it fails. An error in config.log is only a
477   problem if the test should have passed on your system.
478   
479   Common causes of configure failures are: 1) a delegate header is not in the
480   header include path (CPPFLAGS -I option); 2) a delegate library is not in
481   the linker search/run path (LDFLAGS -L/-R option); 3) a delegate library is
482   missing a function (old version?); or 4) compilation environment is faulty.
483   
484   If all reasonable corrective actions have been tried and the problem appears
485   be due to a flaw in the configure script, please send a bug report to the
486   ImageMagick Defect Support Forum. All bug reports should contain the operating
487   system type (as reported by uname -a) and the compiler/compiler-version. A
488   copy of the configure script output and/or the relevant portion of config.log
489   file may be valuable in order to find the problem. If you post portions
490   of config.log, please also send a script of the configure output and a
491   description of what you expected to see (and why) so the failure you are
492   observing can be identified and resolved.
493   
494   ImageMagick is now configured and ready to build
495   
496 Build
497   
498   Once ImageMagick is configured, these standard build targets are available
499   from the generated make files:
500   
501     make
502       build ImageMagick.
503   
504     sudo make install
505       install ImageMagick.
506   
507     make check
508       Run tests using the installed ImageMagick (sudo make install must be
509       done first). Ghostscript is a prerequisite, otherwise the EPS, PS,
510       and PDF tests will fail.
511   
512     make clean
513       Remove everything in the build directory created by make.
514   
515     make distclean
516       remove everything in the build directory created by configure and
517       make. This useful if you want to start over from scratch.
518   
519     make uninstall
520       Remove all files from the system which are (or would be) installed by sudo
521       make install using the current configuration. Note that this target is
522       imperfect for PerlMagick since Perl no longer supports an uninstall
523       target.
524   
525   In most cases you will simply wand to compile ImageMagick with this command:
526   
527     $magick> make
528   
529   Once built, you can optionally install ImageMagick on your system as
530   discussed below.
531   
532 Install
533   
534   Now that ImageMagick is configured and built, type:
535   
536     $magick> make install
537   
538   to install it.
539   
540   By default, ImageMagick is installs binaries in /../usr/local/bin, libraries
541   in /../usr/local/lib, header files in /../usr/local/include and documentation
542   in /../usr/local/share. You can specify an alternative installation prefix
543   other than /../usr/local by giving configure the option --prefix=PATH. This
544   valuable in case you don't have privileges to install under the default
545   paths or if you want to install in the system directories instead.
546   
547   To confirm your installation of the ImageMagick distribution was successful,
548   ensure that the installation directory is in your executable search path
549   and type:
550   
551     $magick> display
552   
553   The ImageMagick logo is displayed on your X11 display.
554   
555   To verify the ImageMagick build configuration, type:
556   
557     $magick> identify -list configure
558   
559   To list which image formats are supported , type:
560   
561     $magick> identify -list format
562   
563   For a more comprehensive test, you run the ImageMagick test suite by typing:
564   
565     $magick> make check
566   
567   Ghostscript is a prerequisite, otherwise the EPS, PS, and PDF tests will
568   fail. Note that due to differences between the developer's environment and
569   your own it is possible that a few tests may fail even though the results are
570   ok. Differences between the developer's environment environment and your own
571   may include the compiler, the CPU type, and the library versions used. The
572   ImageMagick developers use the current release of all dependent libraries.
573
574 Linux-specific Build instructions
575   
576   Download ImageMagick.src.rpm from ftp.imagemagick.org or its mirrors and
577   verify the distribution against its message digest.
578   
579   Build ImageMagick with this command:
580   
581     $magick> rpmbuild --rebuild ImageMagick.src.rpm
582   
583   After the build you, locate the RPMS folder and install the ImageMagick
584   binary RPM distribution:
585   
586     $magick> rpm -ivh ImageMagick-7.0.0-?.*.rpm
587   
588 MinGW-specific Build instructions
589   
590   Although you can download and install delegate libraries yourself, many
591   are already available in the GnuWin32 distribution. Download and install
592   whichever delegate libraries you require such as JPEG, PNG, TIFF, etc. Make
593   sure you specify the development headers when you install a package. Next
594   type,
595   
596     $magick> tar jxvf ImageMagick-7.0.0-?.tar.bz2
597     $magick> cd ImageMagick-7.0.0
598     $magick> export CPPFLAGS="-Ic:/Progra~1/GnuWin32/include"
599     $magick> export LDFLAGS="-Lc:/Progra~1/GnuWin32/lib"
600     $magick> ./configure --without-perl
601     $magick> make $magick> sudo make install
602   
603 Dealing with Unexpected Problems
604   
605   Chances are the download, configure, build, and install of ImageMagick went
606   flawlessly as it is intended, however, certain systems and environments may
607   cause one or more steps to fail. We discuss a few problems we've run across
608   and how to take corrective action to ensure you have a working release
609   of ImageMagick
610   
611   Build Problems
612   
613   If the build complains about missing dependencies (e.g. .deps/source.PLO),
614   add --disable-dependency-tracking to your configure command line.
615   
616   Some systems may fail to link at build time due to unresolved symbols. Try
617   adding the LDFLAGS to the configure command line:
618   
619     $magick> configure LDFLAGS='-L/usr/local/lib -R/usr/local/lib'
620   
621   Dynamic Linker Run-time Bindings
622   
623   On some systems, ImageMagick may not find its shared library, libMagick.so. Try
624   running the ldconfig with the library path:
625   
626     $magick> /sbin/ldconfig /usr/local/lib
627   
628   Solaris and Linux systems have the ldd command which is useful to track which
629   libraries ImageMagick depends on:
630   
631     $magick> ldd `which convert`
632   
633   Delegate Libraries
634   
635   On occasion you may receive these warnings:
636   
637     no decode delegate for this image format
638     no encode delegate for this image format
639   
640   This exception indicates that an external delegate library or its headers
641   were not available when ImageMagick was built. To add support for the image
642   format, download and install the requisite delegate library and its header
643   files and reconfigure, rebuild, and reinstall ImageMagick. As an example,
644   lets add support for the JPEG image format. First we install the JPEG RPMS:
645   
646     $magick> yum install libjpeg libjpeg-devel
647   
648   Now reconfigure, rebuild, and reinstall ImageMagick. To verify JPEG is now
649   properly supported within ImageMagick, use this command:
650   
651     $magick> identify -list format
652   
653   You should see a mode of rw- associated with the JPEG tag. This mode means
654   the image can be read or written and can only support one image per image
655   file.
656   
657 PerlMagick
658   
659   If PerlMagick fails to link with a message similar to libperl.a is not found,
660   rerun configure with the --enable-shared or --enable-shared --with-modules
661   options.