#### Beyond Linux® From Scratch (System V Edition) - Version 12.3

### Chapter 51. Typesetting

- Prev

  Setting the PATH for TeX Live

- Next

  texlive-20240312-source

- Up
- Home

# install-tl-unx

## Introduction to TeX Live and its installer

The TeX Live package is a comprehensive TeX document production system. It includes TeX, LaTeX2e, LuaLaTeX, 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 `2024/` 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 LaTeX, ConTeXt, etc), or you wish to use tlmgr to get updates whilst this version is supported (typically, until March 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

If you wish to use ConTeXt with luametatex (most of the old MKII and MKIV code was removed from TeX Live 2023 by the ConTeXt developer), using the binary is probably the easiest option. The source no-longer ships with TeX Live and is poorly adapted to building with systems except those running Mac and Windows. See comments 1 to 5 of #17823.

This package is known to build and work properly using an LFS 12.3 platform.

### Package Information

- Download (HTTP): https://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz

- Download MD5 sum: Varies frequently

- Download size: 5.5 MB

- Estimated disk space required: 85 MB for plain TeX, typically 320 MB for latex and later engines, 8.6 GB if everything is included

- Estimated build time: varies, depending on network speed and traffic

#### Recommended

GnuPG-2.4.7 (to validate both the initial downloads, and also any updates you might later make using tlmgr) and libwww-perl-6.78 (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.04.0 is dynamically loaded by the external application dvisvgm, which is used by asy when that creates SVG files.

Xorg Libraries and libxcb-1.17.0 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.6.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-24.3.4. Work around that by creating a symlink as the `root` user:

    ln -sv libGL.so.1 /usr/lib/libGLX.so.0

The binary versions of biber and xindy are linked to `libcrypt.so.1` from old versions of glibc. To use these two applications, follow the Note about binary-only applications in libxcrypt in LFS to install the ABI version 1 crypt library.

### 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.

Python2 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.4.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.16 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.04.0, is used by some utilities and scripts.

## 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`.

### Note

If you have chosen to install the binary as a normal user, the directory for the prefix needs to be writable by that user. The `root` user can chown `/opt/texlive/2024` to that user before the user starts the install. If any later change in that directory is made by the `root` user, that will change the ownership, which breaks usage by normal users.

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.

### 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 time to complete the download will depend on your internet connection speed and the number of packages selected.

For a minimal install that will build documentation that is referenced in BLFS, the only installation collections needed are '[a] Essential programs and files' and '[D] LaTeX fundamental packages'. This will download about 130 files and use about 320 MB. Users can select other collections as needed but a full installation will download several thousand files and use over 8GB.

### Note

After installation the PATH environment variable will need to be updated. If the path is the location specified above, run as the `root` user:

    cat > /etc/profile.d/texlive.sh << EOF
    # Begin texlive setup
    TEXLIVE_PREFIX=/opt/texlive/2024
    export TEXLIVE_PREFIX

    pathappend $TEXLIVE_PREFIX/bin/x86_64-linux
    # End texlive setup
    EOF

Immediately after installation, update the current PATH for your current shell as a normal user:

    source /etc/profile.d/texlive.sh

## Command Explanations

`./install-tl --location http://mirror.aut.ac.nz/CTAN/systems/texlive/tlnet/`: use a variation of this if you wish to use a different mirror, for example, because you are in New Zealand but the installer chooses to use an Australian mirror. The list of mirrors is at https://ctan.org/mirrors/.

## Contents

Installed Programs: Over 300 binaries and symlinks to scripts
Installed Libraries: None
Installed Directories: /opt/texlive

### Short Descriptions

TeX programs | The programs included in TeX are too numerous to individually list. Please refer to the individual program HTML and PDF pages in the various html, man, or pdf files within the subdirectories of `2024/texmf-dist/`. Using texdoc pdflatex ( replace pdflatex with the command name ) may also be useful

- Prev

  Setting the PATH for TeX Live

- Next

  texlive-20240312-source

- Up
- Home