glfs/pst/typesetting/texlive-pass1.xml
Ken Moffat eb38c8a5c8 Correct the date in the changelog, add texmf to allow texlive to be installed without the binary installer.
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@14700 af4574ff-66df-0310-9fd7-8a98e5e911e0
2014-10-21 23:24:32 +00:00

327 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 texlive-pass1-download-http " ">
<!ENTITY texlive-pass1-download-ftp "ftp://tug.org/texlive/historic/&texlive-year;/texlive-&texlive-version;-source.tar.xz">
<!ENTITY texlive-pass1-md5sum "09ee265ff51637827559affc7304078c">
<!ENTITY texlive-pass1-size "40 MB">
<!-- when measured, 900MB for pass 1 itself, 3.6 GB for texmf -->
<!ENTITY texlive-pass1-buildsize "3.6 GB including the additional download">
<!ENTITY texlive-pass1-time "8.2 SBU including the additional download">
<!ENTITY texlive-texmf-download-http " ">
<!ENTITY texlive-texmf-download-ftp "ftp://tug.org/texlive/historic/&texlive-year;/texlive-&texlive-version;-texmf.tar.xz">
<!ENTITY texlive-texmf-md5sum "645a6f1d3a0ef4a9c279dae02588eab7">
<!ENTITY texlive-texmf-size "1.7 GB">
]>
<sect1 id="texpass1" xreflabel="texlive-&texlive-version;-source pass 1">
<?dbhtml filename="texlive-pass1.html"?>
<sect1info>
<othername>$LastChangedBy$</othername>
<date>$Date$</date>
</sect1info>
<title>texlive-&texlive-version;-source pass 1</title>
<indexterm zone="texpass1">
<primary sortas="a-texpass1">texlive-pass-1</primary>
</indexterm>
<sect2 role="package">
<title>Introduction to TeX Live from source, pass 1</title>
<para>Most of TeX Live can be built from source without difficulty.
However, <application>xindy</application> (for indexing) needs working
versions of <command>latex</command> and <command>pdflatex</command>
when configure is run, and the testsuite for <command>asy</command>
(for vector graphics) will fail if TeX has not already been installed.
</para>
<para>In addition, it is necessary to create various symlinks at the end of
this install.</para>
<para>We can later rebuild texlive in <xref linkend="texlive"/> to include
xindy. There we will install xindy and also build and install asy.</para>
&lfs76_checked;
<bridgehead renderas="sect3">Package Information</bridgehead>
<itemizedlist spacing="compact">
<listitem>
<para>Download (HTTP): <ulink url="&texlive-pass1-download-http;"/></para>
</listitem>
<listitem>
<para>Download (FTP): <ulink url="&texlive-pass1-download-ftp;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum: &texlive-pass1-md5sum;</para>
</listitem>
<listitem>
<para>Download size: &texlive-pass1-size;</para>
</listitem>
<listitem>
<para>Estimated disk space required: &texlive-pass1-buildsize;</para>
</listitem>
<listitem>
<para>Estimated build time: &texlive-pass1-time;</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">Required Additional Download</bridgehead>
<para>Much of the texlive environment (including scripts, documentation,
fonts and various other files) is not part of the source tarball. You must
download it separately. This will give you all of the additional files
which are provided by a full install of the binary version, there is no
realistic way to restrict which parts get installed.</para>
<para>
Because of the size of this package, it is unlikely to be mirrored by
BLFS mirrors. In case of difficulty, go to http://www.ctan.org/mirrors/
to find a more-accessible mirror.
</para>
<itemizedlist spacing="compact">
<title>Standard Fonts</title>
<listitem>
<para>Download (FTP): <ulink url="&texlive-texmf-download-ftp;"/></para>
</listitem>
<listitem>
<para>Download MD5 sum: &texlive-texmf-md5sum;</para>
</listitem>
<listitem>
<para>Download size: &texlive-texmf-size;</para>
</listitem>
</itemizedlist>
<bridgehead renderas="sect3">TeX Live from source pass 1 Dependencies</bridgehead>
<bridgehead renderas="sect4">Recommended</bridgehead>
<para role="recommended">
<xref linkend="x-window-system"/>
</para>
<para role="recommended">
The source ships with its own versions of <emphasis>many</emphasis>
libraries, and will use them unless it is forced to use the system
versions. The following are recommended so that the system version
will be used:
<xref linkend="fontconfig"/>,
<xref linkend="freetype2"/>,
<xref linkend="gc"/>,
<xref linkend="graphite2"/>,
<xref linkend="harfbuzz"/> (linked to graphite2),
<xref linkend="icu"/>,
<xref linkend="libpaper"/>,
<xref linkend="libpng"/>,
<xref linkend="poppler"/>
</para>
<bridgehead renderas="sect4">Optional</bridgehead>
<para role="optional">
The source ships with its own versions of several libraries which are either
not under active development, or only used for limited functionality. If
you install these, as with some other optional dependencies in this book you
will need to tell <command>configure</command> to use the system versions.
<ulink url="http://libgd.bitbucket.org">GD</ulink>,
<ulink url="http://fossies.org/linux/misc/t1lib-5.1.2.tar.gz/">t1lib</ulink>,
<ulink url="http://sourceforge.net/projects/zziplib/">ZZIPlib</ulink>,
<ulink url="http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&amp;id=TECkitDownloads">TECkit</ulink>
</para>
<bridgehead renderas="sect4">Runtime dependencies</bridgehead>
<para role="recommended">
Some scripts will use
<xref linkend="python2"/> or <xref linkend="ruby"/>.
</para>
<para condition="html" role="usernotes">User Notes:
<ulink url="&blfs-wiki;/texlive-pass1"/></para>
</sect2>
<sect2 role="installation">
<title>Installation of TeX Live, pass 1</title>
<para>
Install TeX Live pass 1 by running the following commands:
</para>
<screen role="root"><userinput>export TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') &amp;&amp;
mkdir texlive-build &amp;&amp;
cd texlive-build &amp;&amp;
../configure \
--prefix=/opt/texlive/&texlive-year; \
--bindir=/opt/texlive/&texlive-year;/bin/$TEXARCH \
--datarootdir=/opt/texlive/&texlive-year; \
--includedir=/usr/include \
--infodir=/opt/texlive/&texlive-year;/texmf-dist/doc/info \
--libdir=/usr/lib \
--mandir=/opt/texlive/&texlive-year;/texmf-dist/doc/man \
--disable-native-texlive-build \
--disable-static --enable-shared \
--with-system-cairo \
--with-system-fontconfig \
--with-system-freetype2 \
--with-system-graphite2 \
--with-system-harfbuzz \
--with-system-icu \
--with-system-libgs \
--with-system-libpng \
--with-system-pixman \
--with-system-poppler \
--with-system-xpdf \
--with-system-zlib \
--with-banner-add=" - BLFS" &amp;&amp;
unset TEXARCH &amp;&amp;
make</userinput></screen>
<para>To test the results, issue: <command>make -k check</command>
One test in each of web2c, dvipng and ttf2pk2 will SKIP because kpathsea
has not yet been installed.</para>
<para>Now, as the <systemitem class="username">root</systemitem>
user:</para>
<screen><userinput role="root">make install &amp;&amp;
make texlinks</userinput></screen>
<para>And now, install the additional files as the
<systemitem class="username">root</systemitem> user:</para>
<screen><userinput role="root">mkdir -pv /opt/texlive/&texlive-year; &amp;&amp;
tar -xf texlive-&texlive-version;-texmf.tar.xz -C /opt/texlive/&texlive-year; --strip-components=1</userinput></screen>
<para>Now proceed to <xref linkend="tex-path"/>.</para>
</sect2>
<sect2 role="commands">
<title>Command Explanations</title>
<para>
<parameter>--prefix=, --bindir=, --datarootdir=, --infodir=, --mandir= ...
</parameter>: these switches ensure that the files installed from source
will overwrite the corresponding files previously installed by
<application>install-tl</application>.
</para>
<para>
<parameter>--includedir=, --libdir= ...</parameter> : these switches ensure
that the libraries will be found at runtime, and that programs can be
compiled against them.
</para>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/static-libraries.xml"/>
<para>
<parameter>--enable-shared</parameter>: Create shared versions of
<filename class="libraryfile">libkpathsea</filename> and
<filename class="libraryfile">libptexenc</filename>.
</para>
<para>
<parameter>--with-system-...</parameter>: Unless this parameter is used,
the included versions of these libraries will be statically compiled
into the programs which need them. If you decided not to install a
recommended library, omit the corresponding switches.
</para>
<para>
<parameter>--with-system-xpdf</parameter>: Uniquely, this parameter has
a non-standard meaning, it tells <command>configure</command> to use the
system-installed <application>poppler</application> headers and library.
Again, omit this if you have not installed
<application>poppler</application>.
</para>
<para>
<option>--without-x</option>: use this if you do not have Xorg installed.
</para>
<para>
<parameter>make texlinks</parameter> : this runs the texlinks.sh script
to create (or recreate) symbolic links from formats to engines. In
practice, several of the targets such as <command>xetex</command> are now
separate binaries and for these it will report "file already exists".
</para>
<para>
<parameter>tar -xf texlive-&texlive-version;-texmf.tar.xz -C /opt/texlive/&texlive-year; --strip-components=1</parameter>:
the tarball contains the files for the texmf-dist directory, and because
of its size we do not want to waste time and space untarring it and then
copying the files.
</para>
</sect2>
<sect2 role="content">
<title>Contents</title>
<segmentedlist>
<segtitle>Installed Programs</segtitle>
<segtitle>Installed Libraries</segtitle>
<segtitle>Installed Directories</segtitle>
<seglistitem>
<seg>Over 300 binaries and symlinks to scripts</seg>
<seg>libkpathsea.so, libptexenc.so</seg>
<seg>/opt/texlive/&texlive-year;/bin, /opt/texlive/&texlive-year;/texmf-dist,
/usr/include/kpathsea, /usr/include/ptexenc</seg>
</seglistitem>
</segmentedlist>
<variablelist>
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
<?dbfo list-presentation="list"?>
<?dbhtml list-presentation="table"?>
<varlistentry id="texpass1-programs">
<term><command>TeX&nbsp;programs</command></term>
<listitem>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
href="../../xincludes/texprogs.xml"/>
<indexterm zone="texpass1 texpass1-programs">
<primary sortas="b-texpass1-programs">TeX Live programs</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libkpathsea-texpass1">
<term><filename class="libraryfile">libkpathsea.so</filename></term>
<listitem>
<para>
(kpathsearch) exists to look up a file in a list of directories.
</para>
<indexterm zone="texpass1 libkpathsea">
<primary sortas="c-libkpathsea">libkpathsea.so</primary>
</indexterm>
</listitem>
</varlistentry>
<varlistentry id="libptexenc-texpass1">
<term><filename class="libraryfile">libptexenc.so</filename></term>
<listitem>
<para>
is a library for Japanese pTeX (publishing TeX).
</para>
<indexterm zone="texpass1 libptexenc">
<primary sortas="c-libptexenc">libptexenc.so</primary>
</indexterm>
</listitem>
</varlistentry>
</variablelist>
</sect2>
</sect1>