source: pst/printing/gs.xml@ e52c70d

11.1 11.2 11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since e52c70d was e52c70d, checked in by Bruce Dubbs <bdubbs@…>, 3 years ago

Recommend lcms2 of ghostscript

  • Property mode set to 100644
File size: 13.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
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 <!-- When updating, ensure gs9xx is updated in url -->
8
9 <!ENTITY gs-download-http
10 "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs&gs-packver;/ghostscript-&gs-version;.tar.xz">
11 <!ENTITY gs-download-ftp " ">
12 <!ENTITY gs-md5sum "92aa46e75c4f32eb11d9c975053d876c">
13 <!ENTITY gs-size "64 MB">
14 <!ENTITY gs-buildsize "360 MB (with fonts and libgs.so)">
15 <!ENTITY gs-time "2.5 SBU (Using parallelism=4; with libgs.so)">
16
17 <!ENTITY gs-standard-fonts-download
18 "&sourceforge-dl;/gs-fonts/ghostscript-fonts-std-8.11.tar.gz">
19 <!ENTITY gs-standard-fonts-md5sum "6865682b095f8c4500c54b285ff05ef6">
20 <!ENTITY gs-standard-fonts-size "3.7 MB">
21
22 <!ENTITY gs-other-fonts-download
23 "&sourceforge-dl;/gs-fonts/gnu-gs-fonts-other-6.0.tar.gz">
24 <!ENTITY gs-other-fonts-md5sum "33457d3f37de7ef03d2eea05a9e6aa4f">
25 <!ENTITY gs-other-fonts-size "796 KB">
26]>
27
28<sect1 id="gs" xreflabel="ghostscript-&gs-version;">
29 <?dbhtml filename="gs.html"?>
30
31 <sect1info>
32 <date>$Date$</date>
33 </sect1info>
34
35 <title>ghostscript-&gs-version;</title>
36
37 <indexterm zone="gs">
38 <primary sortas="a-Ghostscript">Ghostscript</primary>
39 </indexterm>
40
41 <sect2 role="package">
42 <title>Introduction to Ghostscript</title>
43
44 <para>
45 <application>Ghostscript</application> is a versatile processor
46 for PostScript data with the ability to render PostScript to different
47 targets. It is a mandatory part of the cups printing stack.
48 </para>
49
50 &lfs110a_checked;
51
52 <bridgehead renderas="sect3">Package Information</bridgehead>
53 <itemizedlist spacing="compact">
54 <listitem>
55 <para>
56 Download (HTTP): <ulink url="&gs-download-http;"/>
57 </para>
58 </listitem>
59 <listitem>
60 <para>
61 Download (FTP): <ulink url="&gs-download-ftp;"/>
62 </para>
63 </listitem>
64 <listitem>
65 <para>
66 Download MD5 sum: &gs-md5sum;
67 </para>
68 </listitem>
69 <listitem>
70 <para>
71 Download size: &gs-size;
72 </para>
73 </listitem>
74 <listitem>
75 <para>
76 Estimated disk space required: &gs-buildsize;
77 </para>
78 </listitem>
79 <listitem>
80 <para>
81 Estimated build time: &gs-time;
82 </para>
83 </listitem>
84 </itemizedlist>
85
86 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
87 <!-- devs: do not comment out the bridgehead, unless you comment
88 out all the additional downloads (including font files)
89 Commenting this out since it's no longer needed, but keeping it for the
90 inevitable next time that we need a patch for this package.
91 <itemizedlist spacing="compact">
92 <listitem>
93 <para>
94 Required patch:
95 <ulink url="&patch-root;/ghostscript-&gs-version;-upstream_fix-2.patch"/>
96 </para>
97 </listitem>
98 </itemizedlist>
99 -->
100
101 <para>
102 If you wish, you can download additional fonts.
103 </para>
104
105 <itemizedlist spacing="compact">
106 <title>Standard Fonts</title>
107 <listitem>
108 <para>
109 Download (HTTP): <ulink url="&gs-standard-fonts-download;"/>
110 </para>
111 </listitem>
112 <listitem>
113 <para>
114 Download MD5 sum: &gs-standard-fonts-md5sum;
115 </para>
116 </listitem>
117 <listitem>
118 <para>
119 Download size: &gs-standard-fonts-size;
120 </para>
121 </listitem>
122 </itemizedlist>
123
124 <itemizedlist spacing="compact">
125 <title>Other Fonts</title>
126 <listitem>
127 <para>
128 Download (HTTP): <ulink url="&gs-other-fonts-download;"/>
129 </para>
130 </listitem>
131 <listitem>
132 <para>
133 Download MD5 sum: &gs-other-fonts-md5sum;
134 </para>
135 </listitem>
136 <listitem>
137 <para>
138 Download size: &gs-other-fonts-size;
139 </para>
140 </listitem>
141 </itemizedlist>
142
143 <bridgehead renderas="sect3">Ghostscript Dependencies</bridgehead>
144
145 <bridgehead renderas="sect4">Recommended</bridgehead>
146 <para role="recommended">
147 <xref linkend="cups"/> (required for building the <quote>cups</quote>
148 device backend, which is needed by
149 <application>cups-filters</application>),
150 <xref linkend="fontconfig"/> (required, if you are installing any
151 suggested font),
152 <xref linkend="freetype2"/>,
153 <xref linkend="lcms2"/>,
154 <xref linkend="libjpeg"/>,
155 <xref linkend="libpng"/>,
156 <xref linkend="libtiff"/>, and
157 <xref linkend="openjpeg2"/>
158 </para>
159
160 <bridgehead renderas="sect4">Optional</bridgehead>
161 <para role="optional">
162 <xref linkend="cairo"/>,
163 <xref linkend="gtk3"/>,
164 <xref linkend="libidn"/>,
165 <xref linkend="libpaper"/>, and
166 <xref linkend="x-window-system"/>
167 </para>
168
169 <para condition="html" role="usernotes">
170 User Notes: <ulink url="&blfs-wiki;/gs"/>
171 </para>
172 </sect2>
173
174 <sect2 role="installation">
175 <title>Installation of Ghostscript</title>
176
177 <note>
178 <para>
179 The <application>Ghostscript</application> build system is not
180 user-friendly. In order to use system copies of various graphics
181 libraries, you must do it using unconventional methods.
182 </para>
183 </note>
184
185 <para>
186 <application>Ghostscript</application> includes (old) copies of
187 several libraries. Some of these seem to have been patched to fix known
188 vulnerabilities, but others of these copies are less-well maintained.
189 To ensure that any future fixes are applied throughout the whole system,
190 it is recommended that you first install the released versions of these
191 libraries and then configure <application>Ghostscript</application>
192 to link to them.
193 </para>
194
195 <para>
196 If you have installed the recommended dependencies on your system,
197 remove the copies of
198 <application>freetype</application>, <application>lcms2</application>,
199 <application>libjpeg</application>, <application>libpng</application>,
200 and <application>openjpeg</application>:
201 </para>
202
203<screen><userinput>rm -rf freetype lcms2mt jpeg libpng openjpeg</userinput></screen>
204
205<!--
206 <para>
207 Apply a patch to prevent a segfault when processing some PDF files and
208 to fix a public 0-day in libgs which can be exploited via ImageMagick:
209 </para>
210
211<screen><userinput remap="pre">patch -Np1 -i ../ghostscript-&gs-version;-upstream_fix-2.patch</userinput></screen>
212-->
213
214 <para>
215 Fix a build failure due to a typo in a source file:
216 </para>
217
218<screen><userinput remap="pre">sed -i 's/gscms_transformm_color_const/gscms_transform_color_const/' base/gsicc_lcms2.c</userinput></screen>
219
220 <para>
221 Compile <application>Ghostscript</application>:
222 </para>
223
224<screen><userinput>rm -rf zlib &amp;&amp;
225
226./configure --prefix=/usr \
227 --disable-compile-inits \
228 --enable-dynamic \
229 --with-system-libtiff &amp;&amp;
230make</userinput></screen>
231
232 <note>
233 <para>
234 The shared library depends on <xref linkend="gtk3"/>. It is only used by
235 external programs like <xref linkend="asymptote"/>, <xref
236 linkend="dvisvgm"/>, <xref linkend="imagemagick"/>, and <xref
237 linkend="texlive"/>.
238 </para>
239 </note>
240
241 <para>
242 To compile the shared library
243 <filename class="libraryfile">libgs.so</filename>, run the following
244 additional command as an unprivileged user:
245 </para>
246
247<screen><userinput>make so</userinput></screen>
248
249 <para>
250 This package does not come with a test suite. A set of example files
251 may be used for testing, but it is only possible after installation
252 of the package.
253 </para>
254
255 <para>
256 Now, as the <systemitem class="username">root</systemitem> user:
257 </para>
258
259<screen role="root"><userinput>make install</userinput></screen>
260
261 <para>
262 If you want the shared library too:
263 </para>
264
265<screen role="root"><userinput>make soinstall &amp;&amp;
266install -v -m644 base/*.h /usr/include/ghostscript &amp;&amp;
267ln -sfvn ghostscript /usr/include/ps</userinput></screen>
268
269 <para>
270 Now make the documentation accessible from a standard place:
271 </para>
272<!-- Starting with 9.23, the install does not seem to copy the examples any more -->
273
274<screen role="root"><userinput>mv -v /usr/share/doc/ghostscript/&gs-version; /usr/share/doc/ghostscript-&gs-version; &amp;&amp;
275rm -rfv /usr/share/doc/ghostscript &amp;&amp;
276cp -r examples/ /usr/share/ghostscript/&gs-version;/</userinput></screen>
277
278 <para>
279 If you have downloaded the fonts, unpack them to
280 <filename class="directory">/usr/share/ghostscript</filename> and ensure
281 the ownership of the files are
282 <systemitem class="username">root</systemitem>:
283 <systemitem class="groupname">root</systemitem>.
284 </para>
285
286<screen role="root"><userinput>tar -xvf ../ghostscript-fonts-std-8.11.tar.gz -C /usr/share/ghostscript --no-same-owner &amp;&amp;
287tar -xvf ../gnu-gs-fonts-other-6.0.tar.gz -C /usr/share/ghostscript --no-same-owner &amp;&amp;
288fc-cache -v /usr/share/ghostscript/fonts/</userinput></screen>
289
290 <para>
291 You can now test the rendering of various postscript and pdf files from the
292 <filename class="directory">/usr/share/ghostscript/&gs-version;/examples
293 </filename>. To do this, run the following command (in a X Windows display):
294 </para>
295
296<screen remap="test"><userinput>gs -q -dBATCH /usr/share/ghostscript/&gs-version;/examples/tiger.eps</userinput></screen>
297
298 </sect2>
299
300 <sect2 role="commands">
301 <title>Command Explanations</title>
302
303 <para>
304 <command>rm -rf zlib </command>: <application>zlib</application>
305 was installed as part of LFS.
306 </para>
307
308 <para>
309 <parameter>--disable-compile-inits</parameter>: This option makes
310 <command>gs</command> and <filename>libgs.so</filename> slightly smaller.
311 </para>
312
313 <para>
314 <parameter>--with-system-libtiff</parameter>: Remove this option if
315 you've not installed <xref linkend="libtiff"/>.
316 </para>
317
318 <para>
319 <command>install -v -m644 base/*.h... </command>: Some packages
320 (<application>ImageMagick</application> is one) need the
321 <application>Ghostscript</application> interface headers in place to link
322 to the shared library. These commands install the headers.
323 </para>
324
325 <para>
326 <command>ln -sfvn ghostscript /usr/include/ps</command>: Some packages
327 expect to find the interface headers in an alternate location.
328 </para>
329
330 <para>
331 <command>mv -v /usr/share/doc/ghostscript/&gs-version;
332 /usr/share/doc/ghostscript-&gs-version;</command>: This moves the
333 documentation where it is expected to be found.
334 </para>
335
336 <para>
337 <option>--disable-cups</option>: this option will save a tiny amount of
338 space by not linking <command>gs</command> and <filename>libgs.so</filename>
339 to the <xref linkend="cups"/> libraries if you have installed those.
340 </para>
341 </sect2>
342
343 <sect2 role="content">
344 <title>Contents</title>
345 <segmentedlist>
346 <segtitle>Installed Programs</segtitle>
347 <segtitle>Installed Library</segtitle>
348 <segtitle>Installed Directories</segtitle>
349
350 <seglistitem>
351 <seg>
352 dvipdf, eps2eps, gs, gsbj, gsc (from soinstall), gsdj,
353 gsdj500, gslj, gslp, gsnd, gsx (from soinstall), lprsetup.sh,
354 pdf2dsc, pdf2ps, pf2afm, pfbtopfa, pphs, printafm, ps2ascii,
355 ps2epsi, ps2pdf, ps2pdf12, ps2pdf13, ps2pdf14, ps2pdfwr,
356 ps2ps, ps2ps2, and unix-lpr.sh
357 <!-- I don't see bdftops,fixmswrd.pl or pv.sh on my builds [ I don't
358 have any bdf tools from xorg ] but they are still referenced in
359 base/unixinst.mak -->
360 </seg>
361 <seg>libgs.so and
362 /usr/lib/ghostscript/&gs-version;/X11.so</seg>
363 <seg>
364 /usr/include/ghostscript,
365 /usr/lib/ghostscript,
366 /usr/share/ghostscript, and
367 /usr/share/doc/ghostscript-&gs-version;
368 </seg>
369 </seglistitem>
370 </segmentedlist>
371
372 <variablelist>
373 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
374 <?dbfo list-presentation="list"?>
375 <?dbhtml list-presentation="table"?>
376
377 <varlistentry id="gplgs-prog">
378 <term><command>gs</command></term>
379 <listitem>
380 <para>
381 is an interpreter for Adobe Systems' PostScript(tm) and Portable
382 Document Format (PDF)
383 </para>
384 <indexterm zone="gs gplgs-prog">
385 <primary sortas="b-gs">gs</primary>
386 </indexterm>
387 </listitem>
388 </varlistentry>
389
390 <varlistentry id="libgs.so">
391 <term><filename class="libraryfile">libgs.so</filename></term>
392 <listitem>
393 <para>
394 provides <application>Ghostscript</application> functionality to
395 other programs, such as <application>GSView</application>,
396 <application>ImageMagick</application>, and
397 <application>libspectre</application>
398 </para>
399 <indexterm zone="gs libgs.so">
400 <primary sortas="c-libgs.so">libgs.so</primary>
401 </indexterm>
402 </listitem>
403 </varlistentry>
404 </variablelist>
405
406 <para>
407 <application>Ghostscript</application> provides many different
408 scripts used to convert PostScript, PDF, and other formats. Please refer to
409 the HTML documentation or the man pages for information about the
410 capabilities provided.
411 </para>
412 </sect2>
413
414</sect1>
Note: See TracBrowser for help on using the repository browser.