source: pst/printing/gs.xml@ 81f0120

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 81f0120 was 81f0120, checked in by Fernando de Oliveira <fernando@…>, 10 years ago

Update to ghostscript-9.14. Thanks Armin K. for fixing to build with system zlib.

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

  • Property mode set to 100644
File size: 12.2 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 "75f2e8ab8891d052ade9b64eb4eb5294">
11 <!ENTITY gs-size "30 MB">
12 <!ENTITY gs-buildsize
13 "212 MB (includes installing libgs.so, add 5 MB if the fonts are installed)">
14 <!ENTITY gs-time
15 "2.3 SBU (includes building and installing 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 &lfs75_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 (FTP): <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="expat"/>,
109 <xref linkend="freetype2"/>,
110 <xref linkend="libjpeg"/>,
111 <xref linkend="libpng"/>,
112 <xref linkend="libtiff"/>, and
113 <xref linkend="lcms2"/>
114 </para>
115
116 <bridgehead renderas="sect4">Optional</bridgehead>
117 <para role="optional">
118 <xref linkend="cairo"/>,
119 <xref linkend="fontconfig"/>,
120 <xref linkend="gtk2"/>,
121 <xref linkend="cups"/>,
122 <xref linkend="lcms"/> (not used by default, nor if lcms2 is present or found),
123 <xref linkend="libidn"/>,
124 <xref linkend="x-window-system"/> and
125 <ulink url="http://packages.debian.org/unstable/source/libpaper">libpaper</ulink>
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 <application>expat</application>,
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 expat 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 &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="imagemagick"/>.
185 </para>
186 </note>
187
188 <para>
189 To compile the shared library
190 <filename class="libraryfile">libgs.so</filename>, run the following
191 additional command as an unprivileged user:
192 </para>
193
194<screen><userinput>make so</userinput></screen>
195
196 <para>
197 This package does not come with a test suite. However, you may test the
198 operation of the newly built <command>gs</command> program by issuing the
199 following command (issue from an X Window System terminal):
200 </para>
201
202<screen><userinput>bin/gs -Ilib -IResource/Init -dBATCH examples/tiger.eps</userinput></screen>
203
204 <para>
205 Now, as the <systemitem class="username">root</systemitem> user:
206 </para>
207
208<screen role="root"><userinput>make install</userinput></screen>
209
210 <para>If you want the shared library too:</para>
211
212<screen role="root"><userinput>make soinstall &amp;&amp;
213install -v -m644 base/*.h /usr/include/ghostscript &amp;&amp;
214ln -v -s ghostscript /usr/include/ps</userinput></screen>
215
216 <para>Now make the documentation accessible from the normal place:</para>
217
218<screen role="root"><userinput>ln -sfv ../ghostscript/&gs-version;/doc /usr/share/doc/ghostscript-&gs-version;</userinput></screen>
219
220 <para>
221 If you have downloaded any fonts, unpack them to
222 <filename class="directory">/usr/share/ghostscript</filename> and ensure
223 the ownerships of the files are
224 <systemitem class="username">root</systemitem>:
225 <systemitem class="groupname">root</systemitem>. Substitute
226 <replaceable>&lt;font-tarball&gt;</replaceable> appropriately in the
227 command below for the fonts you wish to install:
228 </para>
229
230<screen role="root"><userinput>tar -xvf ../<replaceable>&lt;font-tarball&gt;</replaceable> -C /usr/share/ghostscript --no-same-owner</userinput></screen>
231 </sect2>
232
233 <sect2 role="commands">
234 <title>Command Explanations</title>
235
236 <para>
237 <command>sed -i 's/ZLIBDIR=src/ZLIBDIR=$includedir/' ... </command>:
238 Fix to build with system <application>zlib</application>.
239 </para>
240
241 <para>
242 <command>rm -rf zlib</command>:
243 <application>zlib</application> was installed as part of LFS.
244 </para>
245
246 <para>
247 <parameter>--disable-compile-inits</parameter>: This option makes
248 <command>gs</command> and <filename>libgs.so</filename> slightly smaller.
249 </para>
250
251 <para>
252 <parameter>--with-system-libtiff</parameter>: Remove this option if you've not
253 installed <xref linkend="libtiff"/>.
254 </para>
255
256 <para>
257 <command>install -v -m644 base/*.h... </command>: Some packages
258 (<application>ImageMagick</application> is one) need the
259 <application>Ghostscript</application> interface headers in place to link
260 to the shared library. These commands install the headers.
261 </para>
262
263 <para>
264 <command>ln -v -s ghostscript /usr/include/ps</command>: Some packages
265 expect to find the interface headers in an alternate location.
266 </para>
267
268 <para>
269 <command>ln -sfv ../ghostscript-&gs-version;/doc ... </command>: This puts
270 a symbolic link to the documentation where it is expected to be found.
271 </para>
272
273 <para>
274 <option>--disable-cups</option>: this option will save a tiny amount of
275 space by not linking <command>gs</command> and <filename>libgs.so</filename>
276 to the <xref linkend="cups"/> libraries if you have installed those.
277 </para>
278 </sect2>
279
280 <sect2 role="content">
281 <title>Contents</title>
282 <segmentedlist>
283 <segtitle>Installed Programs</segtitle>
284 <segtitle>Installed Library</segtitle>
285 <segtitle>Installed Directories</segtitle>
286
287 <seglistitem>
288 <seg>
289 dvipdf, eps2eps, font2c, gs, gsbj, gsc (from soinstall), gsdj,
290 gsdj500, gslj, gslp, gsnd, gsx (from soinstall), lprsetup.sh,
291 pdf2dsc, pdf2ps, pf2afm, pfbtopfa, pphs, printafm, ps2ascii,
292 ps2epsi, ps2pdf, ps2pdf12, ps2pdf13, ps2pdf14, ps2pdfwr,
293 ps2ps, ps2ps2, unix-lpr.sh, and wftopfa
294 <!-- I don't see bdftops,fixmswrd.pl or pv.sh on my builds [ I don't
295 have any bdf tools from xorg ] but they are still referenced in
296 base/unixinst.mak -->
297 </seg>
298 <seg>libgs.so and
299 /usr/lib/ghostscript/&gs-version;/X11.so</seg>
300 <seg>
301 /usr/include/ghostscript,
302 /usr/lib/ghostscript,
303 /usr/share/ghostscript, and
304 /usr/share/doc/ghostscript-&gs-version;
305 </seg>
306 </seglistitem>
307 </segmentedlist>
308
309 <variablelist>
310 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
311 <?dbfo list-presentation="list"?>
312 <?dbhtml list-presentation="table"?>
313
314 <varlistentry id="gplgs-prog">
315 <term><command>gs</command></term>
316 <listitem>
317 <para>
318 is an interpreter for Adobe Systems' PostScript(tm) and Portable
319 Document Format (PDF).
320 </para>
321 <indexterm zone="gs gplgs-prog">
322 <primary sortas="b-gs">gs</primary>
323 </indexterm>
324 </listitem>
325 </varlistentry>
326
327 <varlistentry id="libgs.so">
328 <term><filename class="libraryfile">libgs.so</filename></term>
329 <listitem>
330 <para>
331 provides <application>Ghostscript</application> functionality to
332 other programs, such as <application>GSView</application>,
333 <application>ImageMagick</application>, and
334 <application>libspectre</application>.
335 </para>
336 <indexterm zone="gs libgs.so">
337 <primary sortas="c-libgs.so">libgs.so</primary>
338 </indexterm>
339 </listitem>
340 </varlistentry>
341 </variablelist>
342
343 <para>
344 <application>GPL Ghostscript</application> provides many different
345 scripts used to convert PostScript, PDF, and other formats. Please refer to
346 the HTML documentation or the man pages for information about the
347 capabilities provided.
348 </para>
349 </sect2>
350</sect1>
Note: See TracBrowser for help on using the repository browser.