Introduction to TeX Live and its installer
The TeX Live package is a comprehensive
TeX document production system. It includes TeX, LaTeX2e, ConTeXt,
Metafont, MetaPost, BibTeX and many other programs; an extensive
collection of macros, fonts and documentation; and support for
typesetting in many different scripts from around the world.
This page is for people who wish to use the binary installer to
provide the programs, the scripts, and a lot of supporting files and
documentation. The installer is updated frequently, so any published
md5sum will soon be out of date. Newer versions of the
installer are expected to work with these instructions, for so long as
they install to a
2023/
directory.
There are two reasons why you may wish to install the binaries in BLFS:
either you need a smaller install (e.g. at a minimum plain TeX without
LaTeX2e, ConTeXt, etc), or you wish to use tlmgr to
get updates whilst this version is supported (typically, until April of
the year after it was released). For the latter, you might prefer to
install in your /home
directory
as an unprivileged user, and to then make corresponding changes to the
PATH in your ~/.bashrc
or equivalent.
Note
Development versions of BLFS may not build or run
some packages properly if LFS or dependencies have been updated
since the most recent stable versions of the books.
Package Information
Recommended
GnuPG-2.4.3 (to validate both the initial downloads, and also
any updates you might later make using tlmgr.)
libwww-perl-6.72 (to use a single connection to the server,
which will reduce its load and speed things up.)
Recommended (at runtime)
The binaries are mostly linked to included static libraries or
general (LFS) system libraries, but a few of the programs
and several scripts will fail if the following packages are not present:
ghostscript-10.02.1 is dynamically loaded by
the external application dvisvgm,
which is used by asy when that creates SVG
files.
Xorg Libraries and
libxcb-1.16 are needed for inimf, mf,
pdfclose, pdfopen and xdvi-xaw. But if you are using asy, or using a
TeX engine to create a PDF file, you will
need a graphical environment (for PDF files,
this is to support a PDF viewer of your choice, for example
epdfview-gtk3-20200814).
The binary version of asy needs
Freeglut-3.4.0.
The binary version of asy is linked to libGLX.so.0 from
libglvnd,
but installing that will break future updates of BLFS packages such as
Mesa-23.1.8. Work around that by creating a symlink as the
root
user:
ln -sv libGL.so.1 /usr/lib/libGLX.so.0
Note
As always with contributed binary software, it is possible that the
required dependencies may change when the installer is updated. In
particular, these dependencies have only been checked on x86_64.
Python-2.7.18 is used by the unmaintained
ebong CTAN module (intended for writing Bengali in Rapid Roman Format).
/usr/bin/python
is also in the shebang line for the
latex-papersize and lilyglyphs scripts, and documentation at CTAN says both
modules have been updated to work with python3. In pythontex there are
scripts to invoke python3 or python2 according to the system's version of
python. Ruby-3.2.2 is used by
two scripts, one is for pTex (Japanese vertical writing) and the other is
match_parens which might be generally useful. The perl module Tk,
which needs to be run from an X11 session to run the tests and
requires Tk-8.6.13 is used by one of the scripts
for ptex
and is needed for texdoctk (a GUI interface for finding documentation files
and opening them with the appropriate viewer).
ps2pdf, from ghostscript-10.02.1, is
used by some utilities and scripts.
Editor Notes:
https://wiki.linuxfromscratch.org/blfs/wiki/tl-installer
Binary Installation of TeX Live
The TeX Live set of programs with its
supporting documents, fonts, and utilities is very large. The upstream
maintainers recommend placing all files in a single directory structure.
BLFS recommends /opt/texlive
.
As with any other package, unpack the installer and change into its
directory,
install-tl-<CCYYMMDD>
.
This directory name changes when the installer is updated, so replace
<CCYYMMDD> by the correct directory name.
Warning
If you have installed any of the luatex programs (luatex, luahbtex,
luajitex, luajithbtex) or ConTeXt with the luametatex backend there
was a security issue fixed by the introduction of luatex v1.17.0.
You should check the version with 'luatex --version' and if it is
less than 1.17.0 you can use tlmgr to update.
Note
The distribution binaries installed below may use static linking
for general linux system libraries. Additional libraries or
interpreters as specified in the dependencies section do not need to
be present during the install, but the programs that need them will
not run until their specific dependencies have been installed.
With all contributed binary software, there may be a mismatch between
the builder's toolchain and your hardware. In most of TeX this will
probably not matter, but in uncommon corner cases you might hit
problems. For example, if your x86_64 processor does not support 3dnowext or
3dnow, the 2014-06-28 binary failed in conTeXt when running LuaTeX,
although lualatex worked, as did the i686 binaries on the same
machine. In such cases, the easiest solution is to install texlive
from source. Similarly, the x86_64 binary version of
asy runs very slowly when creating 3-D diagrams.
Now, as the root
user:
TEXLIVE_INSTALL_PREFIX=/opt/texlive ./install-tl
This command is interactive and allows selection or modification of
platform, packages, directories, and other options. The full installation
scheme will require about 4.9 gigabytes of disk space. The time to
complete the download will depend on your internet connection speed
and the number of packages selected.
It has been established by Debian that the python
scripts in latex-make
will work
with python3, so update them to invoke that by running
the following command as the root
user:
for F in /opt/texlive/2023/texmf-dist/scripts/latex-make/*.py ; do
test -f $F && sed -i 's%/usr/bin/env python%/usr/bin/python3%' $F || true
done