glfs/pst/typesetting/dvisvgm.xml

218 lines
7.0 KiB
XML
Raw Normal View History

<?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 dvisvgm-download-http "https://github.com/mgieseki/dvisvgm/releases/download/&dvisvgm-version;/dvisvgm-&dvisvgm-version;.tar.gz">
<!ENTITY dvisvgm-download-ftp " ">
<!ENTITY dvisvgm-md5sum "f6fea0b1f160a075bea9fe657ac873fb">
<!ENTITY dvisvgm-size "3.0 MB">
<!ENTITY dvisvgm-buildsize "322 MB (add 978 MB for the tests)">
<!ENTITY dvisvgm-time "0.8 SBU (add 0.6 SBU for the tests, both using parallelism=4)">
]>
<sect1 id="dvisvgm" xreflabel="dvisvgm-&dvisvgm-version;">
<?dbhtml filename="dvisvgm.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>dvisvgm-&dvisvgm-version;</title>
<indexterm zone="dvisvgm">
<primary sortas="a-dvisvgm">dvisvgm</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to dvisvgm</title>
<para>
The <application>dvisvgm</application> package converts DVI, EPS and
PDF files to SVG format.
</para>
&lfs91_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>
Download (HTTP): <ulink url="&dvisvgm-download-http;"/>
</para>
</listitem>
<listitem>
<para>
Download (FTP): <ulink url="&dvisvgm-download-ftp;"/>
</para>
</listitem>
<listitem>
<para>
Download MD5 sum: &dvisvgm-md5sum;
</para>
</listitem>
<listitem>
<para>
Download size: &dvisvgm-size;
</para>
</listitem>
<listitem>
<para>
Estimated disk space required: &dvisvgm-buildsize;
</para>
</listitem>
<listitem>
<para>
Estimated build time: &dvisvgm-time;
</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">dvisvgm Dependencies</bridgehead>
<bridgehead renderas="sect4">Required</bridgehead>
<para role="required">
<!-- EDITORS: the docs say it needs clipper, but it uses an internal
modified version and cannot be built with system clipper -->
<xref linkend="gs"/>,
<xref linkend="potrace"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
<xref linkend="asciidoc"/> with
<xref linkend="xmlto"/> and
<xref linkend="libxslt"/> (see command explanations),
<ulink url="http://dblatex.sourceforge.net/">dblatex</ulink> (with the above) and
<!-- version checked for dvisvgm-2.8, 0.7.2 is mentioned in the
news and is the latest version as of 2019-10-31
maybe change to 'a recent version' if that releases faster -->
<ulink url="http://cyan4973.github.io/xxHash/releases/">xxHash</ulink>
(the current version is included in the tarball)
</para>
<para condition="html" role="usernotes">
User Notes: <ulink url="&blfs-wiki;/dvisvgm"/>
</para>
</sect2>
<sect2 role="installation">
<title>Installation of dvisvgm</title>
<!-- Editors: This is in the book for svg output from asymptote. tested in
http://www.linuxfromscratch.org/~ken/asy-nontex-testfiles/asy-test-20200123.tar.xz
-->
<para>
To enable the build system to link to
<filename class="libraryfile">libkpathsea.so</filename>, as the
<systemitem class="username">root</systemitem> user create a symlink from
<filename class="directory">/usr/lib</filename>:
</para>
<screen role="root"><userinput>ln -svf /opt/texlive/&texlive-year;/lib/libkpathsea.so /usr/lib</userinput></screen>
<para>
Now install <application>dvisvgm</application> by running the following
commands:
</para>
<screen><userinput>./configure \
--bindir=/opt/texlive/&texlive-year;/bin/${TEXARCH} \
--mandir=/opt/texlive/&texlive-year;/texmf-dist/doc/man \
--with-kpathsea=/opt/texlive/&texlive-year; &amp;&amp;
make</userinput></screen>
<para>
To test the results, issue: <command>make check</command>.
</para>
<para>
Now, as the <systemitem class="username">root</systemitem> user:
</para>
<screen role="root"><userinput>make install &amp;&amp;
install -v -m644 doc/dvisvgm.1 \
/opt/texlive/&texlive-year;/texmf-dist/doc/man/man1</userinput></screen>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<command>ln -svf /opt/texlive/&texlive-year;/lib/libkpathsea.so /usr/lib</command>:
Without this, the program will not link correctly,
</para>
<!-- EDITORS: the doc target to rebuild the manpage (make man) is not
recognised unless invoked from the doc directory (unlike make pdf which
can be invoked from top-level but needs dblatex), and I see no utility
in explaining how to regenerate it. ken -->
<para>
<command>--mandir=/opt/texlive/&texlive-year;/texmf-dist/doc/man</command>:
Unusually, the shipped man page will only be installed by <command>make
install</command> if all of <application>asciidoc</application>,
<application>xmlto</application> and <application>libxslt</application>
have been installed. This switch ensures it will overwrite the (old) page
installed by the texmf tarball if it installs.
</para>
<para>
<command>--with-kpathsea=/opt/texlive/&texlive-year;</command>: This allows
the build system to find the headers for <filename
class="libraryfile">kpathsea</filename>
</para>
<para>
<command>install -v -m644 doc/dvisvgm.1 ...</command>: This ensures that
the man page is installed in the correct place even if the optional
dependencies are not present, and overwrites the version installed by
<command>make install</command> if they are present.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Program(s)</segtitle>
<segtitle>Installed Librar(y,ies)</segtitle>
<segtitle>Installed Director(y,ies)</segtitle>
<seglistitem>
<seg>
dvisvgm
</seg>
<seg>
none
</seg>
<seg>
none
</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="dvisvgm-prog">
<term><command>dvisvgm</command></term>
<listitem>
<para>
converts DVI, EPS and PDF files to the SVG format
</para>
<indexterm zone="dvisvgm dvisvgm-prog">
<primary sortas="b-dvisvgm">dvisvgm</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>