source: pst/printing/gs.xml@ ca99836

12.2 trunk
Last change on this file since ca99836 was a3ee3886, checked in by Xi Ruoyao <xry111@…>, 4 weeks ago

gs: Space adjustment and mention the build failure with gcc-14 is related to libidn

I was just wondering why it built fine for me.

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