Introduction to ImageMagick
ImageMagick is a collection of
tools and libraries to read, write, and manipulate an image in
various image formats. Image processing operations are available
from the command line. Bindings for Perl and C++ are also
available.
Note
Development versions of BLFS may not build or run some packages
properly if LFS or dependencies have been updated since the most
recent stable versions of the books.
Package Information
-
Download (HTTP):
https://www.imagemagick.org/archive/releases/ImageMagick-7.1.1-36.tar.xz
-
Download MD5 sum: 208507e5465716767ab9c73f45e8ca06
-
Download size: 10 MB
-
Estimated disk space required: 177 MB, 45 MB installed (with
typical dependencies; add 10 MB for checks)
-
Estimated build time: 0.7 SBU (with typical dependencies; add
0.7 SBU for checks, both using parallelism=4)
Note
The ImageMagick source releases
are updated frequently and the version shown above may no longer
be available from the download locations. You can download a more
recent version and use the existing BLFS instructions to install
it. Chances are that it will work just fine, but this has not
been tested by the BLFS team. If the package version shown above
is not available from the locations shown above, you can download
it from the BLFS package server at Oregon State University:
https://ftp.osuosl.org/pub/blfs/conglomeration/ImageMagick/.
ImageMagick Dependencies
Recommended
Xorg
Libraries
The optional dependencies listed below should be installed if you
need support for the specific format or the conversion tool the
dependency provides. Additional information about the dependencies
can be found in the Install-unix.txt
file located in the source tree as well as issuing the ./configure --help command. A
summary of this information, as well as some additional notes can
be viewed on-line at https://imagemagick.org/script/install-source.php.
Optional System Utilities
Clang from LLVM-19.1.0, Cups-2.4.11, cURL-8.11.0, FFmpeg-7.1,
fftw-3.3.10, p7zip-17.04 (LZMA), SANE-1.2.1, Wget-1.25.0, xdg-utils-1.2.1, xterm-395, Dmalloc,
Electric Fence and PGP or GnuPG-2.4.7 (you'll
have to do some hacking to use GnuPG), Profiles
Optional Graphics Libraries
JasPer-4.2.4, Little CMS-2.16, libgxps-0.3.2, libjpeg-turbo-3.0.1, libjxl-0.11.1,
libpng-1.6.44, libraw-0.21.3 (for dng
files, needs the thread-safe libraw_r), librsvg-2.59.2, libtiff-4.7.0,
libwebp-1.4.0, OpenJPEG-2.5.2,
Pango-1.55.0, DjVuLibre, FlashPIX
(libfpx), FLIF, JBIG-KIT, libheif
with libde265 (both needed
if converting macOS heic images), libraqm, Liquid
Rescale, OpenEXR, and RALCGM (or
ralcgm)
Optional Graphics Utilities
Dejavu fonts, ghostscript-10.04.0, Gimp-20240711,
Graphviz-12.2.0, Inkscape-1.4,
Blender,
corefonts, GhostPCL,
Gnuplot,
POV-Ray, and
Radiance
Optional Conversion Tools
Enscript-1.6.6, Potrace-1.16, texlive-20240312 (or install-tl-unx) AutoTrace, GeoExpress Command Line
Utilities, AKA MrSID Utilities (binary package), hp2xx,
libwmf,
UniConvertor, and Utah
Raster Toolkit (or URT-3.1b)
Installation of ImageMagick
Install ImageMagick by running the
following commands:
./configure --prefix=/usr \
--sysconfdir=/etc \
--enable-hdri \
--with-modules \
--with-perl \
--disable-static &&
make
Now, as the root
user:
make DOCUMENTATION_PATH=/usr/share/doc/imagemagick-7.1.1 install
To test the installation, issue: make
check. Note that the EPS, PS, and PDF tests require
a working Ghostscript. One test in
'make check' needs “Helvetica” from “Ghostscript Standard
Fonts,” which are optionally installed in ghostscript-10.04.0 - that test, and one
other, might fail, but all the validation can still pass.
Command Explanations
--enable-hdri
: Enables
building of a high dynamic range version of ImageMagick.
--with-modules
: Enables
support for dynamically loadable modules.
--with-perl
: Enables
building and installing of PerlMagick.
--disable-static
: This
switch prevents installation of static versions of the libraries.
--with-fftw
: Enables support for the
FFTW shared library.
--with-rsvg
: Enables support for the
librsvg library.
--with-autotrace
: Enables support for
the Autotrace library.
--with-wmf
: Enables support for the
libwmf library.
--with-gvc
: Enables support for
GraphViz.
--with-security-policy=open|limited|secure|websafe
:
If you wish to enforce a policy other than the default 'open' see
www/security-policy.html
in the
source for details.
--with-windows-font-dir= <Some/Directory>
: This
option specifies the directory where the Windows CoreFonts are
installed.
--with-dejavu-font-dir= <Some/Directory>
: This
option specifies the directory where the DejaVu fonts are
installed.
The options and parameters listed above are the only ones you
should have to pass to the configure script to activate all
the delegate dependencies. All other dependencies will be
automatically detected and utilized in the build if they are
installed.
Contents
Installed Programs:
magick, Magick++-config,
MagickCore-config, and MagickWand-config. (animate, compare,
composite, conjure, convert, display, identify, import,
magick-script, mogrify, montage, and stream are all symbolic
links to magick)
Installed Libraries:
libMagickCore-7.Q16HDRI.so,
libMagickWand-7.Q16HDRI.so and libMagick++-7.Q16HDRI.so
Installed Directories:
/etc/ImageMagick-7,
/usr/include/ImageMagick-7, /usr/lib/ImageMagick-7.1.1,
/usr/lib/perl5/site_perl/5.40/{,auto}/Image/Magick,
/usr/share/doc/ImageMagick-7.1.1, and
/usr/share/ImageMagick-7
Short Descriptions
animate
|
animates a sequence of images
|
compare
|
compares an image to a reconstructed image
|
composite
|
composites various images into the given base image
|
conjure
|
processes a MSL script to create an image
|
convert
|
converts image(s) from one format to another
|
display
|
displays an image
|
identify
|
describes the format and characteristics of an image file
|
import
|
captures an X window
|
magick
|
convert between image formats as well as resize an image,
blur, crop, despeckle, dither, draw on, flip, join,
re-sample and much more
|
Magick{++,Core,Wand}-config
|
show information about the installed versions of the
ImageMagick libraries
|
mogrify
|
transforms an image
|
montage
|
composites various images into a new image
|
stream
|
streams one or more pixel components of an image or
portion of the image to your choice of storage formats
|
Image::Magick
|
allows the reading, manipulation and writing of a large
number of image file formats using the ImageMagick library. Run
make in the
PerlMagick/demo directory
of the package source tree after the package is installed
to see a nice demo of the module's capabilities
|
libMagickCore-7.Q16HDRI.so
|
provides the C API for ImageMagick
|
libMagickWand-7.Q16HDRI.so
|
is the recommended C API for ImageMagick. Unlike the
MagickCore API it uses only a few opaque types
|
libMagick++-7.Q16HDRI.so
|
provides the C++ API for ImageMagick
|