mirror of
https://github.com/Zeckmathederg/glfs.git
synced 2025-01-27 18:02:12 +08:00
f4d8a42468
git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@17704 af4574ff-66df-0310-9fd7-8a98e5e911e0
429 lines
16 KiB
XML
429 lines
16 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-download-http " ">
|
|
<!ENTITY texlive-download-ftp "ftp://tug.org/texlive/historic/&texlive-year;/texlive-&texlive-version;-source.tar.xz">
|
|
<!ENTITY texlive-md5sum "1e75db3412b3e2945fa94b0a423a29c7">
|
|
<!ENTITY texlive-size "44 MB">
|
|
|
|
<!ENTITY texlive-buildsize "4.9 GB including the additional download">
|
|
<!ENTITY texlive-time "8.3 SBU including the additional download (+0.3 SBU for the tests)">
|
|
|
|
<!ENTITY texlive-texmf-download-http " ">
|
|
<!ENTITY texlive-texmf-download-ftp "ftp://tug.org/texlive/historic/&texlive-year;/texlive-&texmf-version;-texmf.tar.xz">
|
|
<!ENTITY texlive-texmf-md5sum "65da9b4e2514379d128d4cf4e889b63b">
|
|
<!ENTITY texlive-texmf-size "2.0 GB">
|
|
|
|
]>
|
|
|
|
|
|
<sect1 id="texlive" xreflabel="texlive-&texlive-version;">
|
|
<?dbhtml filename="texlive.html"?>
|
|
|
|
<sect1info>
|
|
<othername>$LastChangedBy$</othername>
|
|
<date>$Date$</date>
|
|
</sect1info>
|
|
|
|
<title>texlive-&texlive-version;-source</title>
|
|
|
|
<indexterm zone="texlive">
|
|
<primary sortas="a-texlive">texlive</primary>
|
|
</indexterm>
|
|
|
|
<sect2 role="package">
|
|
<title>Introduction to TeX Live from source</title>
|
|
|
|
<para>Most of TeX Live can be built from source without a pre-existing
|
|
installation, but <application>xindy</application> (for indexing) needs
|
|
working versions of <command>latex</command> and <command>pdflatex</command>
|
|
when configure is run, and the testsuite and install for
|
|
<command>asy</command> (for vector graphics) will fail if TeX has not
|
|
already been installed. Additionally, <application>biber</application> is
|
|
not provided within the <application>texlive</application> source.</para>
|
|
|
|
<para>All of those packages are dealt with on their own pages and can be
|
|
built after installing this package. If you have not already done so, you
|
|
should start at <xref linkend="tex-path"/> so that the final commands to
|
|
initialise the new installation will be found.</para>
|
|
|
|
&lfs7a_checked;
|
|
|
|
<bridgehead renderas="sect3">Package Information</bridgehead>
|
|
<itemizedlist spacing="compact">
|
|
<listitem>
|
|
<para>Download (HTTP): <ulink url="&texlive-download-http;"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Download (FTP): <ulink url="&texlive-download-ftp;"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Download MD5 sum: &texlive-md5sum;</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Download size: &texlive-size;</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Estimated disk space required: &texlive-buildsize;</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Estimated build time: &texlive-time;</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<bridgehead renderas="sect3">Required Additional Downloads</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">
|
|
<listitem>
|
|
<para>Download (HTTP): <ulink url="&texlive-texmf-download-http;"/></para>
|
|
</listitem>
|
|
<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>
|
|
<listitem>
|
|
<para>Required patch: <ulink
|
|
url="&patch-root;/texlive-&texlive-version;-source-upstream_fixes-1.patch"/></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Required patch: <ulink
|
|
url="&patch-root;/texlive-&texlive-version;-texmf-upstream_fixes-1.patch"/></para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
|
|
<bridgehead renderas="sect3">TeX Live from source Dependencies</bridgehead>
|
|
|
|
<bridgehead renderas="sect4">Recommended</bridgehead>
|
|
<para role="recommended">
|
|
<xref linkend="gs"/> (for dvisvgm - used by asymptote which provides a
|
|
mathematical coordinate-based framework for technical drawing),
|
|
<xref linkend="x-window-system"/>
|
|
</para>
|
|
|
|
<!-- text for recommended libraries -->
|
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
href="../../xincludes/texrecommendlibs.xml"/>
|
|
|
|
<bridgehead renderas="sect4">Optional</bridgehead>
|
|
<!-- text for optional deps -->
|
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
href="../../xincludes/texoptional.xml"/>
|
|
|
|
<bridgehead renderas="sect4">Runtime dependencies</bridgehead>
|
|
<!-- text for runtime deps, shared with tl-installer -->
|
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
href="../../xincludes/texruntime.xml"/>
|
|
|
|
<para condition="html" role="usernotes">User Notes:
|
|
<ulink url="&blfs-wiki;/texlive"/></para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="installation">
|
|
<title>Installation of TeX Live</title>
|
|
|
|
<para>
|
|
Install TeX Live by running the following commands:
|
|
</para>
|
|
|
|
<para>The shared libraries will be installed into a texlive directory.
|
|
As the <systemitem class="username">root</systemitem> user, add it to
|
|
your <filename>/etc/ld.so.conf</filename>:</para>
|
|
|
|
<screen role="root"><userinput>cat >> /etc/ld.so.conf << EOF
|
|
<literal># Begin texlive &texlive-year; addition
|
|
|
|
/opt/texlive/&texlive-year;/lib
|
|
|
|
# End texlive &texlive-year; addition</literal>
|
|
EOF</userinput></screen>
|
|
|
|
<note>
|
|
<para>
|
|
From 2015 onwards, a successful install requires some texlive
|
|
commands to be run as the root user, so we will export the TEXARCH
|
|
variable to let <systemitem class="username">root</systemitem> use it.
|
|
</para>
|
|
</note>
|
|
|
|
<para>
|
|
Now, as a normal user:
|
|
</para>
|
|
<screen><userinput>export TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') &&
|
|
|
|
patch -Np1 -i ../texlive-&texlive-version;-source-upstream_fixes-1.patch &&
|
|
|
|
mkdir texlive-build &&
|
|
cd texlive-build &&
|
|
|
|
../configure \
|
|
--prefix=/opt/texlive/&texlive-year; \
|
|
--bindir=/opt/texlive/&texlive-year;/bin/$TEXARCH \
|
|
--datarootdir=/opt/texlive/&texlive-year; \
|
|
--includedir=/opt/texlive/&texlive-year;/include \
|
|
--infodir=/opt/texlive/&texlive-year;/texmf-dist/doc/info \
|
|
--libdir=/opt/texlive/&texlive-year;/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-gmp \
|
|
--with-system-graphite2 \
|
|
--with-system-harfbuzz \
|
|
--with-system-icu \
|
|
--with-system-libgs \
|
|
--with-system-libpaper \
|
|
--with-system-libpng \
|
|
--with-system-mpfr \
|
|
--with-system-pixman \
|
|
--with-system-poppler \
|
|
--with-system-xpdf \
|
|
--with-system-zlib \
|
|
--with-banner-add=" - BLFS" &&
|
|
|
|
make</userinput></screen>
|
|
|
|
<para>To test the results, issue: <command>make check</command>
|
|
A few tests may SKIP because kpathsea
|
|
has not yet been installed.</para>
|
|
|
|
<para>Now, as the <systemitem class="username">root</systemitem>
|
|
user:</para>
|
|
|
|
<screen role="root"><userinput>make install-strip &&
|
|
make texlinks &&
|
|
ldconfig &&
|
|
mkdir -pv /opt/texlive/&texlive-year;/tlpkg/TeXLive/ &&
|
|
install -v -m644 ../texk/tests/TeXLive/* /opt/texlive/&texlive-year;/tlpkg/TeXLive/</userinput></screen>
|
|
|
|
<note>
|
|
<para>
|
|
Only run <command>make texlinks</command> once. If it is rerun,
|
|
it can change all the program symlinks so that they point to
|
|
themselves and are useless.
|
|
</para>
|
|
</note>
|
|
|
|
<para>Now install the additional files as the
|
|
<systemitem class="username">root</systemitem> user:</para>
|
|
|
|
<screen role="root"><userinput>tar -xf ../../texlive-&texmf-version;-texmf.tar.xz -C /opt/texlive/&texlive-year; --strip-components=1 &&
|
|
pushd /opt/texlive/&texlive-year; &&
|
|
patch -Np1 -i /sources/texlive-&texlive-version;-texmf-upstream_fixes-1.patch &&
|
|
popd
|
|
</userinput></screen>
|
|
|
|
<para>Still as the <systemitem class="username">root</systemitem> user,
|
|
initialise the new system (the commands <command>fmtutil-sys --all</command>
|
|
and <command>mtxrun --generate</command> will produce a
|
|
<emphasis>lot</emphasis> of output):</para>
|
|
|
|
<screen role="root"><userinput>mktexlsr &&
|
|
fmtutil-sys --all &&
|
|
mtxrun --generate</userinput></screen>
|
|
|
|
<para>You can now proceed to <xref linkend="asymptote"/>,
|
|
<xref linkend="biber"/> and / or <xref linkend="xindy"/> if you
|
|
wish to install them.</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="commands">
|
|
<title>Command Explanations</title>
|
|
|
|
<para>
|
|
<parameter>patch -Np1 -i ../texlive-&texlive-version;-source...</parameter>:
|
|
This fixes a segfault in upmendex which was corrected after the source was
|
|
released and is included in the binary installer.
|
|
</para>
|
|
|
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
href="../../xincludes/tex-prefix.xml"/>
|
|
|
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
href="../../xincludes/tex-lib.xml"/>
|
|
|
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
href="../../xincludes/static-libraries.xml"/>
|
|
|
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
href="../../xincludes/tex-shared.xml"/>
|
|
|
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
href="../../xincludes/tex-system.xml"/>
|
|
|
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
href="../../xincludes/tex-xpdf.xml"/>
|
|
|
|
<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 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-&texmf-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>
|
|
|
|
<para>
|
|
<parameter>patch -Np1 -i /sources/texlive-&texlive-version;-texmf...</parameter>:
|
|
This fixes various problems in epstopdf which were found after the source
|
|
was released and are included in the binary installer. Because this is
|
|
applied to the installated texmf (to minimise disk space) it is necessary
|
|
to point to /sources instead of using ../
|
|
</para>
|
|
|
|
<para>
|
|
<parameter>install -v -m644 ../texk/tests/TeXLive/*
|
|
/opt/texlive/&texlive-year;/tlpkg/TeXLive/</parameter>: This puts the perl
|
|
modules <filename>TLConfig.pm</filename> and <filename>TLUtils.pm</filename>
|
|
into the directory where the binary installer puts them - it is at the
|
|
start of the perl @INC@ PATH within texlive when installed using the above
|
|
configure switches. Without these modules, texlive is unusable.
|
|
</para>
|
|
|
|
<para>
|
|
<parameter>mktexlsr</parameter>: Create an <filename>ls-R</filename> file
|
|
which lists what was installed - this is used by kpathsea to find files.
|
|
</para>
|
|
|
|
<para>
|
|
<parameter>fmtutil-sys --all</parameter>: This initialises the TeX formats,
|
|
Metafont bases and Metapost mems.
|
|
</para>
|
|
|
|
<para>
|
|
<parameter>mtxrun --generate</parameter>: This initialise the ConTeXt system.
|
|
</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, libsynctex.so, libtexlua52.so,
|
|
libtexluajit.so</seg>
|
|
<seg>/opt/texlive/&texlive-year;/bin, /opt/texlive/&texlive-year;/include,
|
|
/opt/texlive/&texlive-year;/lib, /opt/texlive/&texlive-year;/texmf-dist</seg>
|
|
</seglistitem>
|
|
</segmentedlist>
|
|
|
|
<variablelist>
|
|
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
|
<?dbfo list-presentation="list"?>
|
|
<?dbhtml list-presentation="table"?>
|
|
|
|
<varlistentry id="texlive-programs">
|
|
<term><command>TeX programs</command></term>
|
|
<listitem>
|
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
|
|
href="../../xincludes/texprogs.xml"/>
|
|
<indexterm zone="texlive texlive-programs">
|
|
<primary sortas="b-texlive-programs">TeX Live programs</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="libkpathsea">
|
|
<term><filename class="libraryfile">libkpathsea.so</filename></term>
|
|
<listitem>
|
|
<para>
|
|
(kpathsearch) exists to look up a file in a list of directories
|
|
and is used by <command>kpsewhich</command>.
|
|
</para>
|
|
<indexterm zone="texlive libkpathsea">
|
|
<primary sortas="c-libkpathsea">libkpathsea.so</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="libptexenc">
|
|
<term><filename class="libraryfile">libptexenc.so</filename></term>
|
|
<listitem>
|
|
<para>
|
|
is a library for Japanese pTeX (publishing TeX).
|
|
</para>
|
|
<indexterm zone="texlive libptexenc">
|
|
<primary sortas="c-libptexenc">libptexenc.so</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="libsynctex">
|
|
<term><filename class="libraryfile">libsynctex.so</filename></term>
|
|
<listitem>
|
|
<para>
|
|
is the SyncTeX (Synchronize TeXnology) parser library.
|
|
</para>
|
|
<indexterm zone="texlive libsynctex">
|
|
<primary sortas="c-libsynctex">libsynctex.so</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="libtexlua52">
|
|
<term><filename class="libraryfile">libtexlua52.so</filename></term>
|
|
<listitem>
|
|
<para>
|
|
provides Lua 5.2, modified for use with LuaTeX.
|
|
</para>
|
|
<indexterm zone="texlive libtexlua52">
|
|
<primary sortas="c-libtexlua52">libtexlua52.so</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="libtexluajit">
|
|
<term><filename class="libraryfile">libtexluajit.so</filename></term>
|
|
<listitem>
|
|
<para>
|
|
provides LuaJIT, modified for use with LuaJITTeX.
|
|
</para>
|
|
<indexterm zone="texlive libtexluajit">
|
|
<primary sortas="c-libtexluajit">libtexluajit.so</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|