source: pst/printing/gs.xml@ f594857

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt nosym perl-modules 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 f594857 was f89fc45, checked in by Ken Moffat <ken@…>, 9 years ago

more tags

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@15909 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 12.5 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 <!ENTITY gs-download-http
8 "http://downloads.ghostscript.com/public/ghostscript-&gs-version;.tar.bz2">
9 <!ENTITY gs-download-ftp " ">
10 <!ENTITY gs-md5sum "21732fd6e39acc283bc623b8842cbfbb">
11 <!ENTITY gs-size "28 MB">
12 <!ENTITY gs-buildsize
13 "170 MB (add 5 MB for fonts and 55 MB for libgs.so)">
14 <!ENTITY gs-time
15 "1 SBU (add 1 SBU for libgs.so)">
16
17 <!ENTITY gs-standard-fonts-download
18 "&sourceforge-repo;/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-repo;/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 <othername>$LastChangedBy$</othername>
33 <date>$Date$</date>
34 </sect1info>
35
36 <title>ghostscript-&gs-version;</title>
37
38 <indexterm zone="gs">
39 <primary sortas="a-GPL-Ghostscript">GPL Ghostscript</primary>
40 </indexterm>
41
42 <sect2 role="package">
43 <title>Introduction to Ghostscript</title>
44
45 <para><application>Ghostscript</application> is a versatile processor
46 for PostScript data with the ability to render PostScript to different
47 targets. It used to be part of the cups printing stack, but is no longer
48 used for that.</para>
49
50 &lfs77_checked; &gcc5_checked;
51
52 <bridgehead renderas="sect3">Package Information</bridgehead>
53 <itemizedlist spacing="compact">
54 <listitem>
55 <para>Download (HTTP): <ulink url="&gs-download-http;"/></para>
56 </listitem>
57 <listitem>
58 <para>Download (FTP): <ulink url="&gs-download-ftp;"/></para>
59 </listitem>
60 <listitem>
61 <para>Download MD5 sum: &gs-md5sum;</para>
62 </listitem>
63 <listitem>
64 <para>Download size: &gs-size;</para>
65 </listitem>
66 <listitem>
67 <para>Estimated disk space required: &gs-buildsize;</para>
68 </listitem>
69 <listitem>
70 <para>Estimated build time: &gs-time;</para>
71 </listitem>
72 </itemizedlist>
73
74 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
75
76 <para>If you wish, you can download additional fonts.</para>
77
78 <itemizedlist spacing="compact">
79 <title>Standard Fonts</title>
80 <listitem>
81 <para>Download (HTTP): <ulink url="&gs-standard-fonts-download;"/></para>
82 </listitem>
83 <listitem>
84 <para>Download MD5 sum: &gs-standard-fonts-md5sum;</para>
85 </listitem>
86 <listitem>
87 <para>Download size: &gs-standard-fonts-size;</para>
88 </listitem>
89 </itemizedlist>
90
91 <itemizedlist spacing="compact">
92 <title>Other Fonts</title>
93 <listitem>
94 <para>Download (HTTP): <ulink url="&gs-other-fonts-download;"/></para>
95 </listitem>
96 <listitem>
97 <para>Download MD5 sum: &gs-other-fonts-md5sum;</para>
98 </listitem>
99 <listitem>
100 <para>Download size: &gs-other-fonts-size;</para>
101 </listitem>
102 </itemizedlist>
103
104 <bridgehead renderas="sect3">Ghostscript Dependencies</bridgehead>
105
106 <bridgehead renderas="sect4">Recommended</bridgehead>
107 <para role="recommended">
108 <xref linkend="freetype2"/>,
109 <xref linkend="libjpeg"/>,
110 <xref linkend="libpng"/>,
111 <xref linkend="libtiff"/>, and
112 <xref linkend="lcms2"/>
113 </para>
114
115 <bridgehead renderas="sect4">Optional</bridgehead>
116 <para role="optional">
117 <xref linkend="cairo"/>,
118 <xref linkend="cups"/>,
119 <xref linkend="fontconfig"/> (required, if you are installing any
120 suggested font),
121 <xref linkend="gtk2"/>,
122 <xref linkend="libidn"/>,
123 <xref linkend="libpaper"/>,
124 <xref linkend="lcms"/> (not used by default, nor if lcms2 is present or found), and
125 <xref linkend="x-window-system"/>
126 </para>
127
128 <para condition="html" role="usernotes">
129 User Notes: <ulink url="&blfs-wiki;/gs"/>
130 </para>
131 </sect2>
132
133 <sect2 role="installation">
134 <title>Installation of Ghostscript</title>
135
136 <note>
137 <para>
138 The <application>Ghostscript</application> build system is not
139 user-friendly. In order to use system copies of various graphics
140 libraries, you must do it using unconventional methods.
141 </para>
142 </note>
143
144 <para>
145 <application>GPL Ghostscript</application> includes (old) copies of
146 several libraries. Some of these seem to have been patched to fix known
147 vulnerabilities, but others of these copies are less-well maintained.
148 To ensure that any future fixes are applied throughout the whole system,
149 it is recommended that you first install the released versions of these
150 libraries and then configure <application>GPL Ghostscript</application>
151 to link to them.
152 </para>
153
154 <para>
155 If you have installed these dependencies on your system, remove the
156 copies of
157 <application>freetype</application>, <application>lcms2</application>,
158 <application>libjpeg</application>, and <application>libpng</application>:
159 </para>
160
161<screen><userinput>sed -i 's/ZLIBDIR=src/ZLIBDIR=$includedir/' configure.ac configure &amp;&amp;
162rm -rf freetype lcms2 jpeg libpng</userinput></screen>
163<!--
164 <note>
165 <para>
166 If you have a multicore computer and try to run make with multiple
167 jobs (eg, make -j4) then the build may fail due to race conditions in
168 the <application>Ghostscript</application> build system. You can work
169 around that problem by simply running make again (eg,
170 <command>make -j4 || make -j1</command>).
171 </para>
172 </note>-->
173
174 <para>Compile <application>Ghostscript</application>:</para>
175
176<screen><userinput>rm -rf zlib expat &amp;&amp;
177./configure --prefix=/usr --disable-compile-inits \
178 --enable-dynamic --with-system-libtiff &amp;&amp;
179make</userinput></screen>
180
181 <note>
182 <para>
183 The shared library depends on <xref linkend="gtk2"/>. It is only used in
184 external programs like <xref linkend="asymptote"/> and
185 <xref linkend="imagemagick"/>.
186 </para>
187 </note>
188
189 <para>
190 To compile the shared library
191 <filename class="libraryfile">libgs.so</filename>, run the following
192 additional command as an unprivileged user:
193 </para>
194
195<screen><userinput>make so</userinput></screen>
196
197 <para>
198 This package does not come with a test suite. A set of example files
199 may be used for testing, but it is only possible after installation
200 of the package.
201 </para>
202
203 <para>
204 Now, as the <systemitem class="username">root</systemitem> user:
205 </para>
206
207<screen role="root"><userinput>make install</userinput></screen>
208
209 <para>If you want the shared library too:</para>
210
211<screen role="root"><userinput>make soinstall &amp;&amp;
212install -v -m644 base/*.h /usr/include/ghostscript &amp;&amp;
213ln -v -s ghostscript /usr/include/ps</userinput></screen>
214
215 <para>Now make the documentation accessible from the normal place:</para>
216
217<screen role="root"><userinput>ln -sfv ../ghostscript/&gs-version;/doc /usr/share/doc/ghostscript-&gs-version;</userinput></screen>
218
219 <para>
220 If you have downloaded any fonts, unpack them to
221 <filename class="directory">/usr/share/ghostscript</filename> and ensure
222 the ownerships of the files are
223 <systemitem class="username">root</systemitem>:
224 <systemitem class="groupname">root</systemitem>. Substitute
225 <replaceable>&lt;font-tarball&gt;</replaceable> appropriately in the
226 command below for the fonts you wish to install:
227 </para>
228
229<screen role="root"><userinput>tar -xvf ../<replaceable>&lt;font-tarball&gt;</replaceable> -C /usr/share/ghostscript --no-same-owner &amp;&amp;
230fc-cache -v /usr/share/ghostscript/fonts/</userinput></screen>
231
232 <para>
233 You can now test the rendering of various postscript and pdf files from the
234 <filename class="directory">/usr/share/ghostscript/&gs-version;/examples
235 </filename>, for example (you need an X window system display):
236 </para>
237
238<screen><userinput>gs -q -dBATCH /usr/share/ghostscript/&gs-version;/examples/tiger.eps</userinput></screen>
239
240 </sect2>
241
242 <sect2 role="commands">
243 <title>Command Explanations</title>
244
245 <para>
246 <command>sed -i 's/ZLIBDIR=src/ZLIBDIR=$includedir/' ... </command>:
247 Fix to build with system <application>zlib</application>.
248 </para>
249
250 <para>
251 <command>rm -rf zlib expat </command>: <application>zlib</application>
252 and <application>expat</application> were installed as part of LFS.
253 </para>
254
255 <para>
256 <parameter>--disable-compile-inits</parameter>: This option makes
257 <command>gs</command> and <filename>libgs.so</filename> slightly smaller.
258 </para>
259
260 <para>
261 <parameter>--with-system-libtiff</parameter>: Remove this option if
262 you've not installed <xref linkend="libtiff"/>.
263 </para>
264
265 <para>
266 <command>install -v -m644 base/*.h... </command>: Some packages
267 (<application>ImageMagick</application> is one) need the
268 <application>Ghostscript</application> interface headers in place to link
269 to the shared library. These commands install the headers.
270 </para>
271
272 <para>
273 <command>ln -v -s ghostscript /usr/include/ps</command>: Some packages
274 expect to find the interface headers in an alternate location.
275 </para>
276
277 <para>
278 <command>ln -sfv ../ghostscript-&gs-version;/doc ... </command>: This puts
279 a symbolic link to the documentation where it is expected to be found.
280 </para>
281
282 <para>
283 <option>--disable-cups</option>: this option will save a tiny amount of
284 space by not linking <command>gs</command> and <filename>libgs.so</filename>
285 to the <xref linkend="cups"/> libraries if you have installed those.
286 </para>
287 </sect2>
288
289 <sect2 role="content">
290 <title>Contents</title>
291 <segmentedlist>
292 <segtitle>Installed Programs</segtitle>
293 <segtitle>Installed Library</segtitle>
294 <segtitle>Installed Directories</segtitle>
295
296 <seglistitem>
297 <seg>
298 dvipdf, eps2eps, font2c, gs, gsbj, gsc (from soinstall), gsdj,
299 gsdj500, gslj, gslp, gsnd, gsx (from soinstall), lprsetup.sh,
300 pdf2dsc, pdf2ps, pf2afm, pfbtopfa, pphs, printafm, ps2ascii,
301 ps2epsi, ps2pdf, ps2pdf12, ps2pdf13, ps2pdf14, ps2pdfwr,
302 ps2ps, ps2ps2, unix-lpr.sh, and wftopfa
303 <!-- I don't see bdftops,fixmswrd.pl or pv.sh on my builds [ I don't
304 have any bdf tools from xorg ] but they are still referenced in
305 base/unixinst.mak -->
306 </seg>
307 <seg>libgs.so and
308 /usr/lib/ghostscript/&gs-version;/X11.so</seg>
309 <seg>
310 /usr/include/ghostscript,
311 /usr/lib/ghostscript,
312 /usr/share/ghostscript, and
313 /usr/share/doc/ghostscript-&gs-version;
314 </seg>
315 </seglistitem>
316 </segmentedlist>
317
318 <variablelist>
319 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
320 <?dbfo list-presentation="list"?>
321 <?dbhtml list-presentation="table"?>
322
323 <varlistentry id="gplgs-prog">
324 <term><command>gs</command></term>
325 <listitem>
326 <para>
327 is an interpreter for Adobe Systems' PostScript(tm) and Portable
328 Document Format (PDF).
329 </para>
330 <indexterm zone="gs gplgs-prog">
331 <primary sortas="b-gs">gs</primary>
332 </indexterm>
333 </listitem>
334 </varlistentry>
335
336 <varlistentry id="libgs.so">
337 <term><filename class="libraryfile">libgs.so</filename></term>
338 <listitem>
339 <para>
340 provides <application>Ghostscript</application> functionality to
341 other programs, such as <application>GSView</application>,
342 <application>ImageMagick</application>, and
343 <application>libspectre</application>.
344 </para>
345 <indexterm zone="gs libgs.so">
346 <primary sortas="c-libgs.so">libgs.so</primary>
347 </indexterm>
348 </listitem>
349 </varlistentry>
350 </variablelist>
351
352 <para>
353 <application>GPL Ghostscript</application> provides many different
354 scripts used to convert PostScript, PDF, and other formats. Please refer to
355 the HTML documentation or the man pages for information about the
356 capabilities provided.
357 </para>
358 </sect2>
359</sect1>
Note: See TracBrowser for help on using the repository browser.