glfs/pst/printing/gs.xml
Bruce Dubbs 019052a11a Update to ghostscript-9.07
Update to docbook-xsl-1.78.1


git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@11535 af4574ff-66df-0310-9fd7-8a98e5e911e0
2013-07-30 20:26:12 +00:00

359 lines
12 KiB
XML

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
<!ENTITY gs-download-http
"http://downloads.ghostscript.com/public/ghostscript-&gs-version;.tar.bz2">
<!ENTITY gs-download-ftp " ">
<!ENTITY gs-md5sum "eea27befc1e85bef6d4768202f6b03a5">
<!ENTITY gs-size "27 MB">
<!ENTITY gs-buildsize
"215 MB (includes installing libgs.so and both font tarballs)">
<!ENTITY gs-time
"3.3 SBU (includes building and installing libgs.so)">
<!ENTITY gs-standard-fonts-download
"&sourceforge-repo;/gs-fonts/ghostscript-fonts-std-8.11.tar.gz">
<!ENTITY gs-standard-fonts-md5sum "6865682b095f8c4500c54b285ff05ef6">
<!ENTITY gs-standard-fonts-size "3.7 MB">
<!ENTITY gs-other-fonts-download
"&sourceforge-repo;/gs-fonts/gnu-gs-fonts-other-6.0.tar.gz">
<!ENTITY gs-other-fonts-md5sum "33457d3f37de7ef03d2eea05a9e6aa4f">
<!ENTITY gs-other-fonts-size "796 KB">
]>
<sect1 id="gs" xreflabel="ghostscript-&gs-version;">
<?dbhtml filename="gs.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>ghostscript-&gs-version;</title>
<indexterm zone="gs">
<primary sortas="a-GPL-Ghostscript">GPL Ghostscript</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to Ghostscript</title>
<para><application>Ghostscript</application> is a versatile processor
for PostScript data with the ability to render PostScript to different
targets.</para>
&lfs73_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>Download (HTTP): <ulink url="&gs-download-http;"/></para>
</listitem>
<listitem>
<para>Download (FTP): <ulink url="&gs-download-ftp;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum: &gs-md5sum;</para>
</listitem>
<listitem>
<para>Download size: &gs-size;</para>
</listitem>
<listitem>
<para>Estimated disk space required: &gs-buildsize;</para>
</listitem>
<listitem>
<para>Estimated build time: &gs-time;</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
<itemizedlist spacing="compact">
<title>Standard Fonts</title>
<listitem>
<para>Download (FTP): <ulink url="&gs-standard-fonts-download;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum: &gs-standard-fonts-md5sum;</para>
</listitem>
<listitem>
<para>Download size: &gs-standard-fonts-size;</para>
</listitem>
</itemizedlist>
<itemizedlist spacing="compact">
<title>Other Fonts</title>
<listitem>
<para>Download (HTTP): <ulink url="&gs-other-fonts-download;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum: &gs-other-fonts-md5sum;</para>
</listitem>
<listitem>
<para>Download size: &gs-other-fonts-size;</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Ghostscript Dependencies</bridgehead>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="expat"/>,
<xref linkend="freetype2"/>,
<xref linkend="libjpeg"/>,
<xref linkend="libpng"/>, and
<xref linkend="libtiff"/> <!--, and
<xref linkend="lcms2"/>-->
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="cairo"/>,
<xref linkend="fontconfig"/>,
<xref linkend="gtk2"/>,
<xref linkend="cups"/>,
<xref linkend="jasper"/>,
<xref linkend="lcms"/>,
<xref linkend="libidn"/>,
<xref linkend="x-window-system"/> and
<ulink url="http://packages.debian.org/unstable/source/libpaper">libpaper</ulink>
</para>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/gs"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of Ghostscript</title>
<note>
<para>
The <application>Ghostscript</application> build system is not
user-friendly. In order to use system copies of various graphics
libraries, you must do it using unconventional methods.
</para>
</note>
<para>
<application>GPL Ghostscript</application> includes (old) copies of
several libraries. Some of these seem to have been patched to fix known
vulnerabilities, but others of these copies are less-well maintained.
To ensure that any future fixes are applied throughout the whole system,
it is recommended that you first install the released versions of these
libraries and then configure <application>GPL Ghostscript</application>
to link to them.
</para>
<para>
If you have installed these dependencies on your system, remove the
copies of <application>expat</application>,
<application>freetype</application>, <!--<application>lcms2</application>, -->
<application>libjpeg</application>, <application>libpng</application>,
and <application>libtiff</application>:
</para>
<note><para>Little CMS-2.5 will not work with this version of
<application>GPL Ghostscript</application>. Use the embedded version
for now.
</para></note>
<screen><userinput>rm -rf expat freetype jpeg libpng tiff</userinput></screen>
<note>
<para>
If you have a multicore computer and try to run make with multiple
jobs (eg, make -j4) then the build may fail due to race conditions in
the <application>Ghostscript</application> build system. You can work
around that problem by simply running make again (eg,
<command>make -j4 || make -j1</command>).
</para>
</note>
<note>
<para>
If you have installed Cups and your printer is <emphasis>not</emphasis>
a postscript printer you will need to add
<option>--with-install-cups</option> to the configure options below.
(This option makes Ghostscript compile and install the gstoraster filter
and the gstoraster.convs configuration file that allow Cups to convert a
PostScript file to raster.)
</para>
</note>
<para>Compile <application>Ghostscript</application>:</para>
<screen><userinput>rm -rf jasper lcms zlib &amp;&amp;
./configure --prefix=/usr --enable-dynamic --with-system-libtiff LIBS=-lz &amp;&amp;
make</userinput></screen>
<note>
<para>
The shared library depends on <xref linkend="gtk2"/>. It is only used in
external programs like <xref linkend="imagemagick"/>.
</para>
</note>
<para>
To compile the shared library
<filename class="libraryfile">libgs.so</filename>, run the following
additional command as an unprivileged user:
</para>
<screen><userinput>make so</userinput></screen>
<para>
This package does not come with a test suite. However, you may test the
operation of the newly built <command>gs</command> program by issuing the
following command (issue from an X Windows terminal):
</para>
<screen><userinput>bin/gs -Ilib -dBATCH examples/tiger.eps</userinput></screen>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install</userinput></screen>
<para>If you want the shared library too:</para>
<screen role="root"><userinput>make soinstall &amp;&amp;
install -v -m644 base/*.h /usr/include/ghostscript &amp;&amp;
ln -v -s ghostscript /usr/include/ps</userinput></screen>
<para>Now install the documentation:</para>
<screen role="root"><userinput>ln -sfv ../ghostscript/&gs-version;/doc /usr/share/doc/ghostscript-&gs-version;</userinput></screen>
<para>
To finish the installation, unpack all fonts you've downloaded to
<filename class="directory">/usr/share/ghostscript</filename> and ensure
the ownerships of the files are
<systemitem class="username">root</systemitem>:
<systemitem class="groupname">root</systemitem>. Substitute
<replaceable>&lt;font-tarball&gt;</replaceable> appropriately in the
command below for the fonts you wish to install:
</para>
<screen role="root"><userinput>tar -xvf ../<replaceable>&lt;font-tarball&gt;</replaceable> -C /usr/share/ghostscript --no-same-owner</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<command>rm -rf jasper lcms zlib</command>: The
<application>Ghostscript</application> build system defaults to using its
own version of <ulink url="http://www.openjpeg.org/">OpenJpeg</ulink> for
JPEG 2000 files <!-- I can't get it to compile using a system installed
version of openjpeg. It seems the ghostscript version has been heavily
modified... --> so jasper source can be removed. The default color
management system is now <application>lcms2</application> so the
<application>lcms</application> source is not needed.
<application>Zlib</application> was installed as part of LFS.
</para>
<para>
<option>--with-system-libtiff</option>: Remove this option if you've not
installed <xref linkend="libtiff"/>.
</para>
<para>
<parameter>LIBS=-lz</parameter>: Use the <envar>LIBS</envar> variable to
tell the linker (ld) to link against the system installed
<application>zlib</application>.
</para>
<para>
<command>install -v -m644 base/*.h...</command>: Some packages
(<application>ImageMagick</application> is one) need the
<application>Ghostscript</application> interface headers in place to link
to the shared library. These commands install the headers.
</para>
<para>
<command>ln -v -s ghostscript /usr/include/ps</command>: Some packages
expect to find the interface headers in an alternate location.
</para>
<para>
<command>ln -sfv ../ghostscript-&gs-version;/doc ...</command>: This puts
a symbolic link to the documentation where it is expected to be found.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Library</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>
bdftops, dumphint, dvipdf, eps2eps, fixmswrd.pl, font2c, gs, gsbj,
gsc (from soinstall), gsdj, gsdj500, gslj, gslp, gsnd, gsx
(from soinstall), lprsetup.sh, pdf2dsc, pdf2ps, pdfopt,
pf2afm, pfbtopfa, printafm, ps2ascii, ps2epsi, ps2pdf, ps2pdf12,
ps2pdf13, ps2pdf14, ps2pdfwr, ps2ps, ps2ps2, pv.sh, unix-lpr.sh, and
wftopfa
</seg>
<seg>libgs.so</seg>
<seg>
/usr/include/ghostscript,
/usr/lib/ghostscript,
/usr/share/ghostscript, and
/usr/share/doc/ghostscript-&gs-version;
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="gplgs-prog">
<term><command>gs</command></term>
<listitem>
<para>
is an interpreter for Adobe Systems' PostScript(tm) and Portable
Document Format (PDF).
</para>
<indexterm zone="gs gplgs-prog">
<primary sortas="b-gs">gs</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libgs.so">
<term><filename class="libraryfile">libgs.so</filename></term>
<listitem>
<para>
provides <application>Ghostscript</application> functionality to
other programs, such as <application>GSView</application>,
<application>ImageMagick</application>, and
<application>libspectre</application>.
</para>
<indexterm zone="gs libgs.so">
<primary sortas="c-libgs.so">libgs.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
<para>
<application>GPL Ghostscript</application> provides many different
scripts used to convert PostScript, PDF, and other formats. Please refer to
the HTML documentation or the man pages for information about the
capabilities provided.
</para>
</sect2>
</sect1>