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
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-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.