source: general/genutils/imagemagick.xml@ 13fc352

12.1 ken/TL2024 lazarus trunk xry111/llvm18
Last change on this file since 13fc352 was 13fc352, checked in by Ken Moffat <ken@…>, 3 months ago

Update to ImageMagick-7.1.1-28.

  • Property mode set to 100644
File size: 22.6 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY imagemagick-patch-version "28">
8
9 <!ENTITY imagemagick-download-http "https://www.imagemagick.org/archive/releases/ImageMagick-&imagemagick-version;-&imagemagick-patch-version;.tar.xz">
10 <!ENTITY imagemagick-download-ftp " ">
11 <!ENTITY imagemagick-md5sum "954931222003bbc79c976db4d79e934c">
12 <!ENTITY imagemagick-size "11 MB">
13 <!ENTITY imagemagick-buildsize "210 MB, 45 MB installed (with typical dependencies; add 10 MB for checks)">
14 <!ENTITY imagemagick-time "0.7 SBU (with typical dependencies; add 0.7 SBU for checks, both using parallelism=4)">
15]>
16
17<!-- Editors: It is highly unlikely that the buildsize (disk space used) will
18 be less than the figure shown above. Unless you have installed *all* the
19 delegate dependencies, you will see a smaller buildsize, but what is
20 currently listed above is the space one would require if all the
21 dependencies available in the book are installed.
22
23 Marked as 'typical' because nobody builds ALL the optional extras [ken]
24
25 [bdubbs] I do; at least the internal ones. I still got only 141 MB.
26
27 [pierre 2017-02-14, v7.0.4-8]. I did too, and got 184 MB. I added the
28 all the corresponding switches to configure, that may make a difference.
29 All 6733 tests passed.
30
31 Saved the "full" 450MB as a comment - feel free to update this iff you
32 do build all dependencies, it's probably a lot bigger now.
33
34 [bdubbs] Just removed it. I don't think it adds anything.
35
36 [ken] Comparing 7.0.10-27 to 7.0.10-57 on the same machine: for -27 my
37 timings and space matched the book (well, make check was marginally
38 faster on this machine), but for -57 the compiled source, installed
39 files and extra space for make check were all much smaller.
40
41 Also, please look over the output from the configure command for any
42 additional dependencies that need to be listed, as ImageMagick is
43 constantly adding additional features and dependencies. Or diff the
44 configure script against the previous version.
45
46 For those of us who touch this infrequently:
47 DPS/dpsXclient is from apple so not relevant to linux builds
48 GVC is part of Graphviz and documented in the explanations
49 iLQR is Liquid Rescale
50 ufraw-batch (ufraw) is unmaintained and does not build with current exiv2 -->
51
52<sect1 id="imagemagick" xreflabel="ImageMagick-&imagemagick-version;-&imagemagick-patch-version;">
53 <?dbhtml filename="imagemagick.html"?>
54
55
56 <title>ImageMagick-&imagemagick-version;-&imagemagick-patch-version;</title>
57
58 <indexterm zone="imagemagick">
59 <primary sortas="a-ImageMagick">ImageMagick</primary>
60 </indexterm>
61
62 <sect2 role="package">
63 <title>Introduction to ImageMagick</title>
64
65 <para>
66 <application>ImageMagick</application> is a collection of tools and
67 libraries to read, write, and manipulate an image in various image
68 formats. Image processing operations are available from the command line.
69 Bindings for Perl and C++ are also available.
70 </para>
71
72 &lfs120_checked;
73
74 <bridgehead renderas="sect3">Package Information</bridgehead>
75 <itemizedlist spacing="compact">
76 <listitem>
77 <para>
78 Download (HTTP): <ulink url="&imagemagick-download-http;"/></para>
79 </listitem>
80 <listitem>
81 <para>
82 Download (FTP): <ulink url="&imagemagick-download-ftp;"/></para>
83 </listitem>
84 <listitem>
85 <para>
86 Download MD5 sum: &imagemagick-md5sum;</para>
87 </listitem>
88 <listitem>
89 <para>
90 Download size: &imagemagick-size;</para>
91 </listitem>
92 <listitem>
93 <para>
94 Estimated disk space required: &imagemagick-buildsize;</para>
95 </listitem>
96 <listitem>
97 <para>
98 Estimated build time: &imagemagick-time;</para>
99 </listitem>
100 </itemizedlist>
101
102 <note>
103 <para>
104 The <application>ImageMagick</application> source releases are updated
105 frequently and the version shown above may no longer be available from
106 the download locations. You can download a more recent version and use
107 the existing BLFS instructions to install it. Chances are that it will
108 work just fine, but this has not been tested by the BLFS team. If the
109 package version shown above is not available from the locations shown
110 above, you can download it from the BLFS package server at Oregon State
111 University: <ulink url="https://ftp.osuosl.org/pub/blfs/conglomeration/ImageMagick/"/>.
112 </para>
113 </note>
114
115 <bridgehead renderas="sect3">ImageMagick Dependencies</bridgehead>
116
117 <bridgehead renderas="sect4">Recommended</bridgehead>
118 <para role="recommended">
119 <xref linkend="xorg7-lib"/>
120 </para>
121
122 <para>
123 The optional dependencies listed below should be installed if you need
124 support for the specific format or the conversion tool the dependency
125 provides. <!-- No such section in 7.1.0-4
126 Many of the dependencies' capabilities and uses are described in
127 the <quote>MAGICK DELEGATES</quote> section of the
128 <filename>README.txt</filename> file located in the source tree. -->
129 Additional information about the dependencies can be found in the
130 <filename>Install-unix.txt</filename> file located in the source tree as
131 well as issuing the <command>./configure --help</command> command. A
132 summary of this information, as well as some additional notes can be
133 viewed on-line at <ulink
134 url="https://imagemagick.org/script/install-source.php"/>.
135 </para>
136
137 <bridgehead renderas="sect4">Optional System Utilities</bridgehead>
138 <para role="optional">
139 Clang from <xref linkend="llvm"/>,
140 <xref linkend="cups"/>,
141 <xref linkend="curl"/>,
142 <xref linkend="ffmpeg"/>,
143 <xref linkend="fftw"/>,
144 <xref linkend="p7zip"/> (LZMA),
145 <xref linkend="sane"/>,
146 <xref linkend="wget"/>,
147 <xref linkend="xdg-utils"/>,
148 <xref linkend="xterm2"/>,
149 <ulink url="https://dmalloc.com/">Dmalloc</ulink>,
150 <ulink url="https://linux.softpedia.com/get/Programming/Debuggers/Electric-Fence-3305.shtml/">Electric Fence</ulink> and
151 <ulink url="https://www.openpgp.org/about/">PGP</ulink> or
152 <xref linkend="gnupg2"/>
153 (you'll have to do some hacking to use <application>GnuPG</application>),
154 <ulink url="https://imagemagick.org/archive/delegates/">Profiles</ulink>
155 </para>
156
157 <bridgehead renderas="sect4">Optional Graphics Libraries</bridgehead>
158 <para role="optional">
159 <xref linkend="jasper"/>,
160 <xref linkend="lcms2"/>,
161 <!-- although libexif may have been used in the past, I can find no
162 evidence that it has been used in imagemagick-7. ken
163 <xref linkend="libexif"/>,-->
164 <xref linkend="libgxps"/>,
165 <xref linkend="libjpeg"/>,
166 <xref linkend="libpng"/>,
167 <xref linkend="libraw"/> (for dng files, needs the thread-safe libraw_r),
168 <xref linkend="librsvg"/>,
169 <xref linkend="libtiff"/>,
170 <xref linkend="libwebp"/>,
171 <xref linkend="openjpeg2"/>,
172 <xref linkend="pango"/>,
173 <ulink url="https://djvu.sourceforge.net/">DjVuLibre</ulink>,
174 <ulink url="https://imagemagick.org/archive/delegates/">
175 FlashPIX (libfpx)</ulink>,
176 <ulink url="https://github.com/FLIF-hub/FLIF/releases">FLIF</ulink>,
177 <ulink url="https://www.cl.cam.ac.uk/~mgk25/jbigkit/">JBIG-KIT</ulink>,
178 <!--<ulink url="&gnome-download-http;/libgxps/">libgxps</ulink>,-->
179 <ulink url="https://github.com/strukturag/libheif/">libheif</ulink> with
180 <ulink url="https://github.com/strukturag/libde265/">libde265</ulink>
181 (both needed if converting macOS heic images),
182 <ulink url="https://github.com/libjxl/libjxl/">libjxl</ulink>,
183 <ulink url="https://github.com/HOST-Oman/libraqm/">libraqm</ulink>,
184 <ulink url="http://liblqr.wikidot.com/en:download-page">Liquid Rescale</ulink>,
185 <ulink url="https://www.openexr.com/">OpenEXR</ulink>, and
186 <ulink url="http://www.agocg.ac.uk/train/cgm/ralcgm.htm">RALCGM</ulink>
187 (or <ulink url="http://www.mcmurchy.com/ralcgm/ralcgm-3.51.tar.gz">ralcgm</ulink>)
188 </para>
189
190 <bridgehead renderas="sect4">Optional Graphics Utilities</bridgehead>
191 <para role="optional">
192 <xref linkend="dejavu-fonts"/>,
193 <xref linkend="gs"/>,
194 <xref linkend="gimp"/>,
195 <xref linkend="graphviz"/>,
196 <xref linkend="inkscape"/>,
197 <ulink url="https://www.blender.org/">Blender</ulink>,
198 <ulink url="https://corefonts.sourceforge.net/">corefonts</ulink>,
199 <ulink url="https://ghostscript.com/releases/gpcldnld.html">GhostPCL</ulink>,
200 <ulink url="http://www.gnuplot.info/">Gnuplot</ulink>,
201 <ulink url="https://www.povray.org/">POV-Ray</ulink>, and
202 <ulink url="https://www.radiance-online.org/">Radiance</ulink>
203 </para>
204
205 <bridgehead renderas="sect4">Optional Conversion Tools</bridgehead>
206 <para role="optional">
207 <xref linkend="enscript"/>,
208 <xref linkend="potrace"/>,
209 <xref linkend="texlive"/> (or <xref linkend="tl-installer"/>)
210 <ulink url="https://autotrace.sourceforge.net/">AutoTrace</ulink>,
211 <ulink url="https://www.extensis.com/">
212 GeoExpress Command Line Utilities, AKA MrSID Utilities (binary package)</ulink>,
213 <ulink url="https://www.gnu.org/software/hp2xx/">hp2xx</ulink>,
214 <!-- not accessible
215 <ulink url="https://user.it.uu.se/~jan/html2ps.html">html2ps</ulink>,
216 -->
217 <ulink url="https://wvware.sourceforge.net/">libwmf</ulink>,
218 <ulink url="https://sk1project.net/uc2/">
219 UniConvertor</ulink>,
220 <!-- ufraw-batch was a delegate program, the delegate library coders/dng.so
221 is used if librar_r is present, ufraw now ftbfs with exiv2-0.28, and IM-7.1.1
222 in any case (if no libraw) invokes it to ask for a temp png file, but then
223 tries to open the temp file using a ppm suffix, which of course fails.
224 <ulink url="https://ufraw.sourceforge.net/">ufraw</ulink> (for dng files,
225 see
226 <ulink url="https://imagemagick.org/script/formats.php">
227 https://imagemagick.org/script/formats.php</ulink> for some special switches)
228 -->
229 and
230 <ulink url="https://www.cs.utah.edu/gdc/projects/urt/">Utah Raster Toolkit</ulink>
231 (or <ulink url="http://www.mcmurchy.com/urt/urt-3.1b.tar.gz">URT-3.1b</ulink>)
232 </para>
233
234 </sect2>
235
236 <sect2 role="installation">
237 <title>Installation of ImageMagick</title>
238
239 <para>
240 Install <application>ImageMagick</application> by running the following
241 commands:
242 </para>
243
244<screen><userinput>./configure --prefix=/usr \
245 --sysconfdir=/etc \
246 --enable-hdri \
247 --with-modules \
248 --with-perl \
249 --disable-static &amp;&amp;
250make</userinput></screen>
251
252 <para>
253 Now, as the <systemitem class="username">root</systemitem> user:
254 </para>
255
256<screen role="root"><userinput>make DOCUMENTATION_PATH=/usr/share/doc/imagemagick-&imagemagick-version; install</userinput></screen>
257
258 <para>
259 To test the installation, issue: <command>make check</command>.
260 <!-- seems to have been dropped A more
261 comprehensive test is the <application>ImageMagick</application>
262 validation suite. If <command>make check</command> has not been executed,
263 run <command>make tests/validate</command> to compile it. Issue
264 <command>tests/validate 2>&amp;1 | tee validate.log</command> to run the
265 validation suite.--> <!-- summary is last line of output
266 The result summary may be obtained with <command>grep
267 "validation suite" validate.log</command>. -->
268 <!-- I'm not convinced that Helvetica is required, I don't install the gs
269 fonts. But lots of references to it. Surely fontconfig provides it? ken -->
270 Note that the EPS, PS, and PDF
271 tests require a working <application>Ghostscript</application>. One test
272 in 'make check' needs <quote>Helvetica</quote> from <quote>Ghostscript
273 Standard Fonts</quote>, which are optionally installed in
274 <xref linkend="gs"/> - that test, and one other, might fail, but all the
275 validation can still pass.
276 </para>
277
278 </sect2>
279
280 <sect2 role="commands">
281 <title>Command Explanations</title>
282
283 <para>
284 <parameter>--enable-hdri</parameter>: Enables building of a
285 high dynamic range version of ImageMagick.
286 </para>
287
288 <para>
289 <parameter>--with-modules</parameter>: Enables support for
290 dynamically loadable modules.
291 </para>
292
293 <para>
294 <parameter>--with-perl</parameter>: Enables building and
295 installing of PerlMagick.
296 </para>
297
298 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
299 href="../../xincludes/static-libraries.xml"/>
300
301 <para>
302 <option>--with-fftw</option>: Enables support to use the
303 <application>FFTW</application> shared library.
304 </para>
305
306 <para>
307 <option>--with-gslib</option>: Enables support to use the
308 <application>Ghostscript</application> shared library.
309 </para>
310
311 <para>
312 <option>--with-rsvg</option>: Enables support to use the
313 <application>librsvg</application> library.
314 </para>
315
316 <para>
317 <option>--with-autotrace</option>: Enables support to use
318 the <application>Autotrace</application> library.
319 </para>
320
321 <para>
322 <option>--with-wmf</option>: Enables support to use the
323 <application>libwmf</application> library.
324 </para>
325
326 <para>
327 <option>--with-gvc</option>: Enables support to use
328 <application>GraphViz</application>.
329 </para>
330
331 <para>
332 <option>--with-security-policy=open|limited|secure|websafe</option>:
333 If you wish to enforce a policy other than the default 'open' see
334 <filename>www/security-policy.html</filename> in the source for
335 details.
336 </para>
337
338 <para>
339 <option>--with-windows-font-dir=
340 <replaceable>&lt;Some/Directory&gt;</replaceable></option>:
341 This option specifies the directory where the Windows CoreFonts are
342 installed.
343 </para>
344
345 <para>
346 <option>--with-dejavu-font-dir=
347 <replaceable>&lt;Some/Directory&gt;</replaceable></option>:
348 This option specifies the directory where the DejaVu fonts are
349 installed.
350 </para>
351
352 <para>
353 The options and parameters listed above are the only ones you should
354 have to pass to the <command>configure</command> script to activate all
355 the delegate dependencies. All other dependencies will be automatically
356 detected and utilized in the build if they are installed.
357 </para>
358
359 </sect2>
360
361 <sect2 role="content">
362 <title>Contents</title>
363
364 <segmentedlist>
365 <segtitle>Installed Programs</segtitle>
366 <segtitle>Installed Libraries</segtitle>
367 <segtitle>Installed Directories</segtitle>
368
369 <seglistitem>
370 <seg>
371 magick, Magick++-config, MagickCore-config, and MagickWand-config.
372 (animate, compare, composite, conjure, convert, display,
373 identify, import, magick-script, mogrify, montage, and stream
374 are all symbolic links to magick)
375 </seg>
376 <seg>
377 libMagickCore-7.Q16HDRI.so,
378 libMagickWand-7.Q16HDRI.so and
379 libMagick++-7.Q16HDRI.so
380 </seg>
381 <seg>
382 /etc/ImageMagick-7,
383 /usr/include/ImageMagick-7,
384 /usr/lib/ImageMagick-&imagemagick-version;,
385 /usr/lib/perl5/site_perl/&lfs-perl-version;/{,auto}/Image/Magick,
386 /usr/share/doc/ImageMagick-&imagemagick-version;, and
387 /usr/share/ImageMagick-7
388 </seg>
389 </seglistitem>
390 </segmentedlist>
391
392 <variablelist>
393 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
394 <?dbfo list-presentation="list"?>
395 <?dbhtml list-presentation="table"?>
396
397 <varlistentry id="animate">
398 <term><command>animate</command></term>
399 <listitem>
400 <para>
401 animates a sequence of images
402 </para>
403 <indexterm zone="imagemagick animate">
404 <primary sortas="b-animate">animate</primary>
405 </indexterm>
406 </listitem>
407 </varlistentry>
408
409 <varlistentry id="compare">
410 <term><command>compare</command></term>
411 <listitem>
412 <para>
413 compares an image to a reconstructed image
414 </para>
415 <indexterm zone="imagemagick compare">
416 <primary sortas="b-compare">compare</primary>
417 </indexterm>
418 </listitem>
419 </varlistentry>
420
421 <varlistentry id="composite">
422 <term><command>composite</command></term>
423 <listitem>
424 <para>
425 composites various images into the given base image
426 </para>
427 <indexterm zone="imagemagick composite">
428 <primary sortas="b-composite">composite</primary>
429 </indexterm>
430 </listitem>
431 </varlistentry>
432
433 <varlistentry id="conjure">
434 <term><command>conjure</command></term>
435 <listitem>
436 <para>
437 processes a MSL script to create an image
438 </para>
439 <indexterm zone="imagemagick conjure">
440 <primary sortas="b-conjure">conjure</primary>
441 </indexterm>
442 </listitem>
443 </varlistentry>
444
445 <varlistentry id="convert">
446 <term><command>convert</command></term>
447 <listitem>
448 <para>
449 converts image(s) from one format to another
450 </para>
451 <indexterm zone="imagemagick convert">
452 <primary sortas="b-convert">convert</primary>
453 </indexterm>
454 </listitem>
455 </varlistentry>
456
457 <varlistentry id="display">
458 <term><command>display</command></term>
459 <listitem>
460 <para>
461 displays an image
462 </para>
463 <indexterm zone="imagemagick display">
464 <primary sortas="b-display">display</primary>
465 </indexterm>
466 </listitem>
467 </varlistentry>
468
469 <varlistentry id="identify">
470 <term><command>identify</command></term>
471 <listitem>
472 <para>
473 describes the format and characteristics of an image file
474 </para>
475 <indexterm zone="imagemagick identify">
476 <primary sortas="b-identify">identify</primary>
477 </indexterm>
478 </listitem>
479 </varlistentry>
480
481 <varlistentry id="import">
482 <term><command>import</command></term>
483 <listitem>
484 <para>
485 captures an X window
486 </para>
487 <indexterm zone="imagemagick import">
488 <primary sortas="b-import">import</primary>
489 </indexterm>
490 </listitem>
491 </varlistentry>
492
493 <varlistentry id="magick">
494 <term><command>magick</command></term>
495 <listitem>
496 <para>
497 convert between image formats as well as resize an image,
498 blur, crop, despeckle, dither, draw on, flip, join, re-sample
499 and much more
500 </para>
501 <indexterm zone="imagemagick magick">
502 <primary sortas="b-magick">magick</primary>
503 </indexterm>
504 </listitem>
505 </varlistentry>
506
507 <varlistentry id="magick-config">
508 <term><command>Magick{++,Core,Wand}-config</command></term>
509 <listitem>
510 <para>
511 show information about the installed versions of the
512 <application>ImageMagick</application> libraries
513 </para>
514 <indexterm zone="imagemagick magick-config">
515 <primary sortas="b-Magick-config">Magick-config</primary>
516 </indexterm>
517 </listitem>
518 </varlistentry>
519
520 <varlistentry id="mogrify">
521 <term><command>mogrify</command></term>
522 <listitem>
523 <para>
524 transforms an image
525 </para>
526 <indexterm zone="imagemagick mogrify">
527 <primary sortas="b-mogrify">mogrify</primary>
528 </indexterm>
529 </listitem>
530 </varlistentry>
531
532 <varlistentry id="montage">
533 <term><command>montage</command></term>
534 <listitem>
535 <para>
536 composites various images into a new image
537 </para>
538 <indexterm zone="imagemagick montage">
539 <primary sortas="b-montage">montage</primary>
540 </indexterm>
541 </listitem>
542 </varlistentry>
543
544 <varlistentry id="stream">
545 <term><command>stream</command></term>
546 <listitem>
547 <para>
548 streams one or more pixel components of an image or
549 portion of the image to your choice of storage formats
550 </para>
551 <indexterm zone="imagemagick stream">
552 <primary sortas="b-stream">stream</primary>
553 </indexterm>
554 </listitem>
555 </varlistentry>
556
557 <varlistentry id="perlmagick">
558 <term><filename class="libraryfile">Image::Magick</filename></term>
559 <listitem>
560 <para>
561 allows the reading, manipulation and writing of a large number of
562 image file formats using the <application>ImageMagick</application>
563 library. Run <command>make</command> in the
564 <filename class="directory">PerlMagick/demo</filename> directory of
565 the package source tree after the package is installed to see a nice
566 demo of the module's capabilities
567 </para>
568 <indexterm zone="imagemagick perlmagick">
569 <primary sortas="g-Image-Magick">Image::Magick</primary>
570 </indexterm>
571 </listitem>
572 </varlistentry>
573
574 <varlistentry id="libMagickCore-7.Q16HDRI">
575 <term><filename class="libraryfile">libMagickCore-7.Q16HDRI.so</filename></term>
576 <listitem>
577 <para>
578 provides the C API for ImageMagick
579 </para>
580 <indexterm zone="imagemagick libMagickCore-7.Q16HDRI">
581 <primary sortas="c-libMagickCore-7.Q16HDRI">libMagickCore-7.Q16HDRI.so</primary>
582 </indexterm>
583 </listitem>
584 </varlistentry>
585
586 <varlistentry id="libMagickWand-7.Q16HDRI">
587 <term><filename class="libraryfile">libMagickWand-7.Q16HDRI.so</filename></term>
588 <listitem>
589 <para>
590 is the recommended C API for ImageMagick. Unlike the MagickCore API it
591 uses only a few opaque types
592 </para>
593 <indexterm zone="imagemagick libMagickWand-7.Q16HDRI">
594 <primary sortas="c-libMagickWand-7.Q16HDRI">libMagickWand-7.Q16HDRI.so</primary>
595 </indexterm>
596 </listitem>
597 </varlistentry>
598
599 <varlistentry id="libMagickpp-7.Q16HDRI">
600 <term><filename class="libraryfile">libMagick++-7.Q16HDRI.so</filename></term>
601 <listitem>
602 <para>
603 provides the C++ API for ImageMagick
604 </para>
605 <indexterm zone="imagemagick libMagickpp-7.Q16HDRI">
606 <primary sortas="c-libMagick++-7.Q16HDRI">libMagick++-7.Q16HDRI.so</primary>
607 </indexterm>
608 </listitem>
609 </varlistentry>
610
611 </variablelist>
612
613 </sect2>
614
615</sect1>
Note: See TracBrowser for help on using the repository browser.