ImageMagick-7.1.1-15

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]

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

[Note]

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

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-17.0.1, Cups-2.4.7, cURL-8.4.0, FFmpeg-6.1, fftw-3.3.10, p7zip-17.04 (LZMA), SANE-1.2.1, Wget-1.21.4, xdg-utils-1.1.3, xterm-388, Dmalloc, Electric Fence and PGP or GnuPG-2.4.3 (you'll have to do some hacking to use GnuPG), Profiles

Optional Graphics Libraries

JasPer-4.1.0, Little CMS-2.14, libgxps-0.3.2, libjpeg-turbo-3.0.1, libpng-1.6.40, libraw-0.21.1 (for dng files, needs the thread-safe libraw_r), librsvg-2.57.0, libtiff-4.6.0, libwebp-1.3.2, OpenJPEG-2.5.0, Pango-1.50.14, DjVuLibre, FlashPIX (libfpx), FLIF, JBIG-KIT, libheif with libde265 (both needed if converting macOS heic images), libjxl, libraqm, Liquid Rescale, OpenEXR, and RALCGM (or ralcgm)

Optional Graphics Utilities

Dejavu fonts, ghostscript-10.02.1, Gimp-2.10.36, Graphviz-9.0.0, Inkscape-1.3.2, Blender, corefonts, GhostPCL, Gnuplot, POV-Ray, and Radiance

Optional Conversion Tools

Enscript-1.6.6, Potrace-1.16, texlive-20230313 (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)

Editor Notes: https://wiki.linuxfromscratch.org/blfs/wiki/imagemagick

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.02.1 - 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-gslib: Enables support to use the Ghostscript shared library.

--with-rsvg: Enables support to use the librsvg library.

--with-autotrace: Enables support to use the Autotrace library.

--with-wmf: Enables support to use the libwmf library.

--with-gvc: Enables support to use GraphViz.

--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.38/{,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