source: pst/printing/gs.xml@ de109d93

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 7.10 7.4 7.5 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 de109d93 was de109d93, checked in by Ken Moffat <ken@…>, 13 years ago

Update to ghostscript-9.00

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

  • Property mode set to 100644
File size: 14.4 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 "&sourceforge-repo;/ghostscript/ghostscript-&gs-version;.tar.bz2"> -->
8 <!ENTITY gs-download-http "http://ghostscript.com/releases/ghostscript-&gs-version;.tar.gz">
9 <!-- no response 2010-12-18
10 <!ENTITY gs-download-ftp "ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/GPL/gs900/ghostscript-&gs-version;.tar.gz"> -->
11 <!ENTITY gs-download-ftp " ">
12 <!ENTITY gs-md5sum "177c33b796ed28d3d568e230a6dbdba5">
13 <!ENTITY gs-size "22.3 MB">
14 <!ENTITY gs-buildsize "170 MB (includes installing libgs.so and both font tarballs)">
15 <!ENTITY gs-time "2.7 SBU (includes building and installing libgs.so)">
16
17 <!-- <!ENTITY gs-standard-fonts-download "ftp://ftp.imagemagick.org/pub/ImageMagick/delegates/ghostscript-fonts-std-8.11.tar.gz"> -->
18 <!ENTITY gs-standard-fonts-download "&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 "&sourceforge-repo;/gs-fonts/gnu-gs-fonts-other-6.0.tar.gz">
23 <!ENTITY gs-other-fonts-md5sum "33457d3f37de7ef03d2eea05a9e6aa4f">
24 <!ENTITY gs-other-fonts-size "796 KB">
25]>
26
27<sect1 id="gs" xreflabel="GPL Ghostscript-&gs-version;">
28 <?dbhtml filename="gs.html"?>
29
30 <sect1info>
31 <othername>$LastChangedBy$</othername>
32 <date>$Date$</date>
33 </sect1info>
34
35 <title>GPL Ghostscript-&gs-version;</title>
36
37 <indexterm zone="gs">
38 <primary sortas="a-GPL-Ghostscript">GPL Ghostscript</primary>
39 </indexterm>
40
41 <sect2 role="package">
42 <title>Introduction to Ghostscript</title>
43
44 <para><application>Ghostscript</application> is a versatile processor
45 for PostScript data with the ability to render PostScript to different
46 targets.</para>
47
48 &lfs67_checked;
49
50 <bridgehead renderas="sect3">Package Information</bridgehead>
51 <itemizedlist spacing="compact">
52 <listitem>
53 <para>Download (HTTP): <ulink url="&gs-download-http;"/></para>
54 </listitem>
55 <listitem>
56 <para>Download (FTP): <ulink url="&gs-download-ftp;"/></para>
57 </listitem>
58 <listitem>
59 <para>Download MD5 sum: &gs-md5sum;</para>
60 </listitem>
61 <listitem>
62 <para>Download size: &gs-size;</para>
63 </listitem>
64 <listitem>
65 <para>Estimated disk space required: &gs-buildsize;</para>
66 </listitem>
67 <listitem>
68 <para>Estimated build time: &gs-time;</para>
69 </listitem>
70 </itemizedlist>
71
72 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
73
74 <itemizedlist spacing='compact'>
75 <title>Standard Fonts</title>
76 <listitem>
77 <para>Download (FTP): <ulink url="&gs-standard-fonts-download;"/></para>
78 </listitem>
79 <listitem>
80 <para>Download MD5 sum: &gs-standard-fonts-md5sum;</para>
81 </listitem>
82 <listitem>
83 <para>Download size: &gs-standard-fonts-size;</para>
84 </listitem>
85 </itemizedlist>
86
87 <itemizedlist spacing='compact'>
88 <title>Other Fonts</title>
89 <listitem>
90 <para>Download (HTTP): <ulink url="&gs-other-fonts-download;"/></para>
91 </listitem>
92 <listitem>
93 <para>Download MD5 sum: &gs-other-fonts-md5sum;</para>
94 </listitem>
95 <listitem>
96 <para>Download size: &gs-other-fonts-size;</para>
97 </listitem>
98 </itemizedlist>
99
100 <itemizedlist spacing="compact">
101 <title>Patches</title>
102 <listitem>
103 <para>Required patch: <ulink
104 url="&patch-root;/ghostscript-&gs-version;-security_fixes-1.patch"/>
105 </para>
106 </listitem>
107 <listitem>
108 <para>Recommended patch (unless you build without JPEG2000 support) : <ulink
109 url="&patch-root;/ghostscript-&gs-version;-system_jasper-1.patch"/>
110 </para>
111 </listitem>
112 </itemizedlist>
113
114 <bridgehead renderas="sect3">Ghostscript Dependencies</bridgehead>
115
116 <bridgehead renderas="sect4">Recommended</bridgehead>
117 <para role="optional"><xref linkend="expat"/>,
118 <xref linkend="freetype2"/>,
119 <xref linkend="jasper"/>
120 <xref linkend="libjpeg"/>,
121 <xref linkend="libpng"/>,
122 <xref linkend="libtiff"/>, and
123 <xref linkend="lcms"/></para>
124
125 <bridgehead renderas="sect4">Optional</bridgehead>
126 <para role="optional">
127 <xref linkend="cairo"/>,
128 <xref linkend="fontconfig"/>,
129 <xref linkend="gtk2"/>,
130 <xref linkend="cups"/>,
131 <xref linkend="x-window-system"/>, and
132 <!-- the link for ijs source ultimately takes users back to the ghostscript site
133 <ulink url="http://www.linuxprinting.org/ijs/">IJS</ulink>, and -->
134 <ulink url="http://packages.debian.org/unstable/source/libpaper">libpaper</ulink></para>
135
136 <para condition="html" role="usernotes">User Notes:
137 <ulink url="&blfs-wiki;/gs"/></para>
138
139 </sect2>
140
141 <sect2 role="installation">
142 <title>Installation of Ghostscript</title>
143
144 <para>Install <application>GPL Ghostscript</application> by running the
145 following commands:</para>
146
147 <note>
148 <para>The <application>Ghostscript</application> build system is not
149 user-friendly. In order to use system copies of various graphics
150 libraries, you must do it using unconventional methods.</para>
151 </note>
152
153 <para>Begin by patching some vulnerabilities:</para>
154
155<screen><userinput>patch -Np1 -i ../ghostscript-&gs-version;-security_fixes-1.patch
156</userinput></screen>
157
158 <para><application>GPL Ghostscript</application> includes (old) copies of
159 several libraries. Some of these seem to have been patched to fix known
160 vulnerabilities, but others of these copies are less-well maintained.
161 To ensure that any future fixes are applied throughout the whole system,
162 it is recommended that you build the released versions of these libraries
163 and then configure <application>GPL Ghostscript</application> to link to
164 them. This configuration has several steps.</para>
165
166 <para>Unless you intend to build <application>GPL Ghostscript</application>
167 without support for <literal>JPEG2000</literal> files, apply a patch to
168 allow it to build against a current system-installed version of
169 <application>JasPer</application>:</para>
170
171<screen><userinput>patch -Np1 -i ../ghostscript-&gs-version;-system_jasper-1.patch
172</userinput></screen>
173
174 <para>Remove the local copies of <application>expat</application>,
175 <application>JasPer</application>, <application>lcms</application>,
176 <application>libjpeg</application>, <application>libpng</application>,
177 <application>libtiff</application>, and <application>zlib</application>:
178 </para>
179
180<screen><userinput>rm -rf expat jasper lcms jpeg libpng tiff zlib
181</userinput></screen>
182
183 <para>Run the configure command:</para>
184
185<screen><userinput>./configure --prefix=/usr --enable-dynamic --with-drivers=ALL,x11 --with-system-libtiff --disable-compile-inits</userinput></screen>
186
187 <para>To ensure the build is able to use the system versions of
188 <application>expat</application>, <application>freetype</application>, and
189 <application>lcms</application> it is necessary to make some changes and an
190 addition to the <literal>Makefile</literal> before building the package:</para>
191
192<screen><userinput>sed -i -e 's|SHARE_LCMS=0|SHARE_LCMS=1|' \
193 -e 's|LCMSSRCDIR=lcms|LCMSSRCDIR=/usr|' \
194 -e 's|=imdi|&amp;\n\n# Use system expat library\n\nSHARE_EXPAT=1|' \
195 -e 's|SHARE_FT=0|SHARE_FT=1|' Makefile &amp;&amp;
196make</userinput></screen>
197
198 <para>This package does not come with a test suite. However, you may test
199 the operation of the newly built <command>gs</command> program by
200 issuing the following command (issue from an X Windows terminal):</para>
201
202 <screen><userinput>bin/gs -Ilib -dBATCH examples/tiger.eps</userinput></screen>
203
204 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
205
206<!-- for 9.00 docdir is only referenced by GS_DOCDIR which is itself not referenced
207 so the docs still go into /usr/share/ghostscript/9.00/
208<screen role="root"><userinput>make install docdir=/usr/share/doc/ghostscript-&gs-version; &amp;&amp;-->
209<screen role="root"><userinput>make install &amp;&amp;
210for INSTFILE in `ls doc`
211do
212 <!--if [ ! -f /usr/share/doc/ghostscript-&gs-version;/$INSTFILE ]; then -->
213 if [ ! -f /usr/share/ghostscript/&gs-version;/doc/$INSTFILE ]; then
214 install -v -m644 doc/$INSTFILE \
215 /usr/share/ghostscript/&gs-version;/doc
216 <!--/usr/share/doc/ghostscript-&gs-version;-->
217 fi
218done &amp;&amp;
219
220<!--install -v -m755 -d /usr/share/doc/ghostscript-&gs-version;/figures &amp;&amp;-->
221install -v -m755 -d /usr/share/ghostscript/&gs-version;/doc/figures &amp;&amp;
222install -v -m644 doc/figures/* \
223 /usr/share/ghostscript/&gs-version;/doc/figures &amp;&amp;
224 <!--/usr/share/doc/ghostscript-&gs-version;/figures-->
225ln -sv ../ghostscript/&gs-version;/doc /usr/share/doc/ghostscript-&gs-version;
226</userinput></screen>
227
228 <para>To install the shared library
229 <filename class='libraryfile'>libgs.so</filename>, run the
230 following additional command as an unprivileged user:</para>
231
232<screen><userinput>make so</userinput></screen>
233
234 <para>And again as the <systemitem class="username">root</systemitem>
235 user:</para>
236
237<screen role="root"><userinput>make soinstall docdir=/usr/share/doc/ghostscript-&gs-version; &amp;&amp;
238install -v -m644 base/*.h /usr/include/ghostscript &amp;&amp;
239ln -v -s ghostscript /usr/include/ps</userinput></screen>
240
241 <note>
242 <para>The shared library depends on <xref linkend="gtk2"/>. It is
243 only used in external programs like <xref linkend="gsview"/> and
244 <xref linkend="imagemagick"/>.</para>
245 </note>
246
247 <para>To finish the installation, unpack all fonts you've downloaded to
248 <filename class="directory">/usr/share/ghostscript</filename> and ensure
249 the ownerships of the files are
250 <systemitem class="username">root</systemitem>:<systemitem
251 class="groupname">root</systemitem>. Substitute
252 <replaceable>&lt;font-tarball&gt;</replaceable> appropriately in
253 the command below for the fonts you wish to install:</para>
254
255<screen role="root"><userinput>tar -xvf ../<replaceable>&lt;font-tarball&gt;</replaceable> \
256 -C /usr/share/ghostscript --no-same-owner</userinput></screen>
257
258 </sect2>
259
260 <sect2 role="commands">
261 <title>Command Explanations</title>
262
263 <para><command>--with-drivers=ALL,x11</command>: This parameter adds the
264 <literal>x11</literal> output device to the default (<literal>ALL</literal>)
265 selection so that the test to render the tiger will work on 32-bit systems
266 (this does no harm on the <literal>x86_64</literal> architecture, although
267 it is not required there).</para>
268 <para><command>--disable-compile-inits</command>: This parameter is intended
269 to avoid compiling initialization files into the executables. It is used here
270 to simplify building agaisnt the system version of
271 <application>zlib</application>.</para>
272 <para><option>--without-jasper</option>: If you know you do not wish to print
273 any <literal>JPEG2000</literal> files, this switch (and removing the
274 <filename class="directory">jasper/</filename> source) will achieve this.</para>
275 <para><option>--without-jbig2dec</option>: The <literal>JBIG2</literal>
276 decompression code (used for some faxes) can be disabled by using this switch
277 and removing the <filename class="directory">jbig2dec/</filename> source.</para>
278 <para><command>install ...</command>: Some packages
279 (<application>ImageMagick</application> is one) need the
280 <application>Ghostscript</application> interface headers in place to link
281 to the shared library. These commands install the headers.</para>
282
283 <para><command>ln -sv ... /usr/share/doc/ghostscript-&gs-version;</command>: This puts
284 the documentation where it is expected to be found.</para>
285
286 <para><command>ln -v -s ghostscript /usr/include/ps</command>: Some
287 packages expect to find the interface headers in an alternate
288 location.</para>
289
290 </sect2>
291
292 <sect2 role="content">
293 <title>Contents</title>
294 <segmentedlist>
295 <segtitle>Installed Programs</segtitle>
296 <segtitle>Installed Library</segtitle>
297 <segtitle>Installed Directories</segtitle>
298
299 <seglistitem>
300 <seg>bdftops, dumphint, dvipdf, eps2eps, fixmswrd.pl, font2c, gs, gsbj,
301 gsc (from soinstall), gsdj, gsdj500, gslj, gslp, gsnd, gsx (from soinstall),
302 lprsetup.sh, pdf2dsc, pdf2ps, pdfopt,
303 pf2afm, pfbtopfa, printafm, ps2ascii, ps2epsi, ps2pdf, ps2pdf12,
304 ps2pdf13, ps2pdf14, ps2pdfwr, ps2ps, ps2ps2, pv.sh, unix-lpr.sh, and
305 wftopfa</seg>
306 <seg>libgs.so </seg>
307 <seg>/usr/include/ghostscript, /usr/lib/ghostscript, /usr/share/ghostscript,
308 <!--and /usr/share/doc/ghostscript</seg>-->
309 and /usr/share/doc/ghostscript-&gs-version;</seg>
310 </seglistitem>
311 </segmentedlist>
312
313 <variablelist>
314 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
315 <?dbfo list-presentation="list"?>
316 <?dbhtml list-presentation="table"?>
317
318 <varlistentry id="gplgs-prog">
319 <term><command>gs</command></term>
320 <listitem>
321 <para>is an interpreter for Adobe Systems' PostScript(tm) and Portable Document Format
322 (PDF).</para>
323 <indexterm zone="gs gplgs-prog">
324 <primary sortas="b-gs">gs</primary>
325 </indexterm>
326 </listitem>
327 </varlistentry>
328
329 <varlistentry id="libgs.so">
330 <term><filename class="libraryfile">libgs.so</filename></term>
331 <listitem>
332 <para>provides <application>Ghostscript</application> functionality
333 to other programs, such as <application>GSView</application>,
334 <application>ImageMagick</application>, and
335 <application>libspectre</application>.</para>
336 <indexterm zone="gs libgs.so">
337 <primary sortas="c-libgs.so">libgs.so</primary>
338 </indexterm>
339 </listitem>
340 </varlistentry>
341
342 </variablelist>
343
344 <para><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.</para>
348
349 </sect2>
350
351</sect1>
Note: See TracBrowser for help on using the repository browser.