source: general/genutils/imagemagick.xml@ 0fa6d836

12.1 ken/TL2024 lazarus trunk xry111/llvm18
Last change on this file since 0fa6d836 was 2864283c, checked in by Ken Moffat <ken@…>, 5 months ago

ImageMagick: remove redundant --with-gslib

Configure shows

checking for Ghostscript...
checking for ghostscript/iapi.h... yes
checking for ghostscript/ierrors.h... yes
checking for gsapi_new_instance in Ghostscript framework... no
checking for gsapi_new_instance in -lgs... yes
checking if Ghostscript package is complete... yes, using library.

Ghostscript lib --with-gslib=yes yes

and running 'display --version' includes gslib among the delegates.

I have not been able to find *where* it either links to, or
dynamically opens, libgs.so, but past quereies show that libgs was
used to open postscript files, Most of my local .ps files have
transparent backgrounds and look unreadable in 'display', but
using 'convert' to create jpegs gives a soemwhat readable result.

  • Property mode set to 100644
File size: 22.4 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 for the
303 <application>FFTW</application> shared library.
304 </para>
305
306 <para>
307 <option>--with-rsvg</option>: Enables support for the
308 <application>librsvg</application> library.
309 </para>
310
311 <para>
312 <option>--with-autotrace</option>: Enables support for
313 the <application>Autotrace</application> library.
314 </para>
315
316 <para>
317 <option>--with-wmf</option>: Enables support for the
318 <application>libwmf</application> library.
319 </para>
320
321 <para>
322 <option>--with-gvc</option>: Enables support for
323 <application>GraphViz</application>.
324 </para>
325
326 <para>
327 <option>--with-security-policy=open|limited|secure|websafe</option>:
328 If you wish to enforce a policy other than the default 'open' see
329 <filename>www/security-policy.html</filename> in the source for
330 details.
331 </para>
332
333 <para>
334 <option>--with-windows-font-dir=
335 <replaceable>&lt;Some/Directory&gt;</replaceable></option>:
336 This option specifies the directory where the Windows CoreFonts are
337 installed.
338 </para>
339
340 <para>
341 <option>--with-dejavu-font-dir=
342 <replaceable>&lt;Some/Directory&gt;</replaceable></option>:
343 This option specifies the directory where the DejaVu fonts are
344 installed.
345 </para>
346
347 <para>
348 The options and parameters listed above are the only ones you should
349 have to pass to the <command>configure</command> script to activate all
350 the delegate dependencies. All other dependencies will be automatically
351 detected and utilized in the build if they are installed.
352 </para>
353
354 </sect2>
355
356 <sect2 role="content">
357 <title>Contents</title>
358
359 <segmentedlist>
360 <segtitle>Installed Programs</segtitle>
361 <segtitle>Installed Libraries</segtitle>
362 <segtitle>Installed Directories</segtitle>
363
364 <seglistitem>
365 <seg>
366 magick, Magick++-config, MagickCore-config, and MagickWand-config.
367 (animate, compare, composite, conjure, convert, display,
368 identify, import, magick-script, mogrify, montage, and stream
369 are all symbolic links to magick)
370 </seg>
371 <seg>
372 libMagickCore-7.Q16HDRI.so,
373 libMagickWand-7.Q16HDRI.so and
374 libMagick++-7.Q16HDRI.so
375 </seg>
376 <seg>
377 /etc/ImageMagick-7,
378 /usr/include/ImageMagick-7,
379 /usr/lib/ImageMagick-&imagemagick-version;,
380 /usr/lib/perl5/site_perl/&lfs-perl-version;/{,auto}/Image/Magick,
381 /usr/share/doc/ImageMagick-&imagemagick-version;, and
382 /usr/share/ImageMagick-7
383 </seg>
384 </seglistitem>
385 </segmentedlist>
386
387 <variablelist>
388 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
389 <?dbfo list-presentation="list"?>
390 <?dbhtml list-presentation="table"?>
391
392 <varlistentry id="animate">
393 <term><command>animate</command></term>
394 <listitem>
395 <para>
396 animates a sequence of images
397 </para>
398 <indexterm zone="imagemagick animate">
399 <primary sortas="b-animate">animate</primary>
400 </indexterm>
401 </listitem>
402 </varlistentry>
403
404 <varlistentry id="compare">
405 <term><command>compare</command></term>
406 <listitem>
407 <para>
408 compares an image to a reconstructed image
409 </para>
410 <indexterm zone="imagemagick compare">
411 <primary sortas="b-compare">compare</primary>
412 </indexterm>
413 </listitem>
414 </varlistentry>
415
416 <varlistentry id="composite">
417 <term><command>composite</command></term>
418 <listitem>
419 <para>
420 composites various images into the given base image
421 </para>
422 <indexterm zone="imagemagick composite">
423 <primary sortas="b-composite">composite</primary>
424 </indexterm>
425 </listitem>
426 </varlistentry>
427
428 <varlistentry id="conjure">
429 <term><command>conjure</command></term>
430 <listitem>
431 <para>
432 processes a MSL script to create an image
433 </para>
434 <indexterm zone="imagemagick conjure">
435 <primary sortas="b-conjure">conjure</primary>
436 </indexterm>
437 </listitem>
438 </varlistentry>
439
440 <varlistentry id="convert">
441 <term><command>convert</command></term>
442 <listitem>
443 <para>
444 converts image(s) from one format to another
445 </para>
446 <indexterm zone="imagemagick convert">
447 <primary sortas="b-convert">convert</primary>
448 </indexterm>
449 </listitem>
450 </varlistentry>
451
452 <varlistentry id="display">
453 <term><command>display</command></term>
454 <listitem>
455 <para>
456 displays an image
457 </para>
458 <indexterm zone="imagemagick display">
459 <primary sortas="b-display">display</primary>
460 </indexterm>
461 </listitem>
462 </varlistentry>
463
464 <varlistentry id="identify">
465 <term><command>identify</command></term>
466 <listitem>
467 <para>
468 describes the format and characteristics of an image file
469 </para>
470 <indexterm zone="imagemagick identify">
471 <primary sortas="b-identify">identify</primary>
472 </indexterm>
473 </listitem>
474 </varlistentry>
475
476 <varlistentry id="import">
477 <term><command>import</command></term>
478 <listitem>
479 <para>
480 captures an X window
481 </para>
482 <indexterm zone="imagemagick import">
483 <primary sortas="b-import">import</primary>
484 </indexterm>
485 </listitem>
486 </varlistentry>
487
488 <varlistentry id="magick">
489 <term><command>magick</command></term>
490 <listitem>
491 <para>
492 convert between image formats as well as resize an image,
493 blur, crop, despeckle, dither, draw on, flip, join, re-sample
494 and much more
495 </para>
496 <indexterm zone="imagemagick magick">
497 <primary sortas="b-magick">magick</primary>
498 </indexterm>
499 </listitem>
500 </varlistentry>
501
502 <varlistentry id="magick-config">
503 <term><command>Magick{++,Core,Wand}-config</command></term>
504 <listitem>
505 <para>
506 show information about the installed versions of the
507 <application>ImageMagick</application> libraries
508 </para>
509 <indexterm zone="imagemagick magick-config">
510 <primary sortas="b-Magick-config">Magick-config</primary>
511 </indexterm>
512 </listitem>
513 </varlistentry>
514
515 <varlistentry id="mogrify">
516 <term><command>mogrify</command></term>
517 <listitem>
518 <para>
519 transforms an image
520 </para>
521 <indexterm zone="imagemagick mogrify">
522 <primary sortas="b-mogrify">mogrify</primary>
523 </indexterm>
524 </listitem>
525 </varlistentry>
526
527 <varlistentry id="montage">
528 <term><command>montage</command></term>
529 <listitem>
530 <para>
531 composites various images into a new image
532 </para>
533 <indexterm zone="imagemagick montage">
534 <primary sortas="b-montage">montage</primary>
535 </indexterm>
536 </listitem>
537 </varlistentry>
538
539 <varlistentry id="stream">
540 <term><command>stream</command></term>
541 <listitem>
542 <para>
543 streams one or more pixel components of an image or
544 portion of the image to your choice of storage formats
545 </para>
546 <indexterm zone="imagemagick stream">
547 <primary sortas="b-stream">stream</primary>
548 </indexterm>
549 </listitem>
550 </varlistentry>
551
552 <varlistentry id="perlmagick">
553 <term><filename class="libraryfile">Image::Magick</filename></term>
554 <listitem>
555 <para>
556 allows the reading, manipulation and writing of a large number of
557 image file formats using the <application>ImageMagick</application>
558 library. Run <command>make</command> in the
559 <filename class="directory">PerlMagick/demo</filename> directory of
560 the package source tree after the package is installed to see a nice
561 demo of the module's capabilities
562 </para>
563 <indexterm zone="imagemagick perlmagick">
564 <primary sortas="g-Image-Magick">Image::Magick</primary>
565 </indexterm>
566 </listitem>
567 </varlistentry>
568
569 <varlistentry id="libMagickCore-7.Q16HDRI">
570 <term><filename class="libraryfile">libMagickCore-7.Q16HDRI.so</filename></term>
571 <listitem>
572 <para>
573 provides the C API for ImageMagick
574 </para>
575 <indexterm zone="imagemagick libMagickCore-7.Q16HDRI">
576 <primary sortas="c-libMagickCore-7.Q16HDRI">libMagickCore-7.Q16HDRI.so</primary>
577 </indexterm>
578 </listitem>
579 </varlistentry>
580
581 <varlistentry id="libMagickWand-7.Q16HDRI">
582 <term><filename class="libraryfile">libMagickWand-7.Q16HDRI.so</filename></term>
583 <listitem>
584 <para>
585 is the recommended C API for ImageMagick. Unlike the MagickCore API it
586 uses only a few opaque types
587 </para>
588 <indexterm zone="imagemagick libMagickWand-7.Q16HDRI">
589 <primary sortas="c-libMagickWand-7.Q16HDRI">libMagickWand-7.Q16HDRI.so</primary>
590 </indexterm>
591 </listitem>
592 </varlistentry>
593
594 <varlistentry id="libMagickpp-7.Q16HDRI">
595 <term><filename class="libraryfile">libMagick++-7.Q16HDRI.so</filename></term>
596 <listitem>
597 <para>
598 provides the C++ API for ImageMagick
599 </para>
600 <indexterm zone="imagemagick libMagickpp-7.Q16HDRI">
601 <primary sortas="c-libMagick++-7.Q16HDRI">libMagick++-7.Q16HDRI.so</primary>
602 </indexterm>
603 </listitem>
604 </varlistentry>
605
606 </variablelist>
607
608 </sect2>
609
610</sect1>
Note: See TracBrowser for help on using the repository browser.