texlive-20220321-source
Introduction à TeX Live from source
Note
D'après https://www.tug.org/historic/
le site principal en France ne prend en charge que ftp et rsync.
Maintenant que ftp est globalement obsolète, cette page a des
liens vers des miroirs, dont certains prennent en charge https,
p. ex. en Utah et Chemntiz ainsi qu'en Chine. Si vous
préférez utiliser un miroir différent des liens d'exemple ici,
vous devrez naviguer dans systems/historic/texlive/2022 ou
systems/texlive/2022 suivant le cas.
La majorité de TeX Live peut être construite depuis les sources
sans une installation pré-existante, mais xindy (pour l'indexage) demande des versions
fonctionnelles de latex et pdflatex quand configure est
lancé, et les suites de tests et l'installation de asy (pour les graphiques
vectoriels) échoueront si TeX n'a pas déjà été installé. De plus,
biber n'est pas fournit dans les
sources de texlive et la version
de dvisvgm dans l'arborescence de
texlive ne peut pas être construit
si les bibliothèques partagées du système sont utilisées.
L'ensemble de ces paquets sont traités dans leur propre page et
peuvent être construits après l'installation de ce paquet. Si vous
ne l'avez pas encore fait, vous pouvez démarrer par Initialisation du PATH pour
TeX Live pour que les dernières commandes pour initialiser la
nouvelle installation soient trouvées.
This package is known to build and work properly using an LFS 11.3
platform.
Informations sur le paquet
Téléchargement supplémentaire requis
La plupart de l'environnement texlive (incluant scripts,
documentation, polices et divers autres fichiers) n'est pas dans
l'archive des sources. Vous devez les télécharger séparément. Cela
vous donnera tous les fichiers supplémentaires qui sont fournis par
une installation complète de la version binaire, ce n'est pas
réaliste de limiter les parties à installer.
À cause de la taille de ce paquet, il n'est pas disponible sur les
miroirs BLFS. En cas de problème, allez sur
http://www.ctan.org/mirrors/ pour trouver un miroir plus
accessible.
À partir de 2019, la base de données tlpdb des paquets dans texlive
n'est plus installée avec les sources. Mais texdoc a besoin d'un fichier de
cache dérivé de cette base (et créera le cache à sont premier
démarrage).
Dépendances de TeX Live from source
Recommandées
un environnement
graphique
Les sources sont livrées avec leurs propres versions de
nombreuses bibliothèques, et
les utiliseront à moins de forcer l'utilisation des versions du
système. Les dépendances suivantes sont recommandées afin
d'utiliser les versions du système : Cairo-1.17.6, Fontconfig-2.14.2, FreeType-2.13.0, GC-8.2.2, Graphite2-1.3.14, HarfBuzz-7.0.0 (construit avec graphite2),
ICU-72.1, libpaper-1.1.24+nmu5 (utilisé par au
moins context et xelatex) et libpng-1.6.39
En plus, les instructions ci-dessous supposent que vous utilisez la
disposition décrite dans Initialisation du PATH
pour TeX Live.
Facultatives
Les sources sont livrées avec leurs propres versions de quelques
bibliothèques qui ne sont soit plus dans un développement actif,
soit seulement utilisées pour des fonctionnalités limitées. Si vous
les installez, comme d'autres dépendances facultatives dans ce
livre, vous devrez dire à configure d'utiliser les versions
du système. GD, t1lib, ZZIPlib,
TECkit
Dépendances d'exécution
Python-2.7.18 est utilisé par de nombreux
scripts, dont la plupart ne sont plus mis à jour. Nombre d'entre
eux invoquent /usr/bin/env python
,
quelques-uns invoquent /usr/bin/python
. On ne sait pas vraiment s'ils
fonctionnent avec un lien symbolique vers python3 (comme c'est le cas de
certaines distributions) et deux scripts de pythontex invoquent
python2. Ruby-3.2.1 est utilisé par quelques scripts,
principalement avec mtx_context qui fait partie de conTeXt, mais aussi avec un ou deux autres,
comme match_parens, qui peuvent s'avérer utiles. Le module perl
Tk, qui doit être exécuté dans une session X11 pour lancer les
tests et qui nécessite Tk-8.6.13, est utilisé par l'un des scripts
pour ptex (écriture japonaise verticale), peut être utilisé par un
script texfind de conTeXt et est requis par texdoctk (une interface
graphique pour trouver les fichiers de documentation et les ouvrir
avec la visionneuse appropriée). ps2pdf, de ghostscript-10.00.0, est
utilisé par certains utilitaires et scripts.
Notes utilisateur : https://wiki.linuxfromscratch.org/blfs/wiki/texlive
Installation de TeX Live
Installez TeX Live en exécutant les commandes suivantes :
Attention
Si vous voulez mettre à jour texlive vers la version actuelle sur un
système plus ancien où des paquets supplémentaires (asymptote, biber. dvisvgm ou xindy) sont installés, vous devrez les
réinstaller et corriger votre PATH
pour inclure $TEXLIVE_PREFIX
.
Les bibliothèques partagées seront installées dans un répertoire
texlive. En tant qu'utilisateur root
, ajoutez-le dans votre /etc/ld.so.conf
:
cat >> /etc/ld.so.conf << EOF
# Begin texlive addition
$TEXLIVE_PREFIX/lib
# End texlive addition
EOF
Note
Une installation complète demande que des commandes de texlive
soient lancées en tant qu'utilisateur root, donc nous exporterons
la variable TEXARCH pour que root
l'utilise.
Maintenant, en tant qu'utilisateur normal :
export TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') &&
mkdir texlive-build &&
cd texlive-build &&
../configure \
--prefix=$TEXLIVE_PREFIX \
--bindir=$TEXLIVE_PREFIX/bin/$TEXARCH \
--datarootdir=$TEXLIVE_PREFIX \
--includedir=$TEXLIVE_PREFIX/include \
--infodir=$TEXLIVE_PREFIX/texmf-dist/doc/info \
--libdir=$TEXLIVE_PREFIX/lib \
--mandir=$TEXLIVE_PREFIX/texmf-dist/doc/man \
--disable-native-texlive-build \
--disable-static --enable-shared \
--disable-dvisvgm \
--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-zlib \
--with-banner-add=" - BLFS" &&
make
Pour tester les résultats lancez : make check.
Maintenant, en tant qu'utilisateur root
:
make install-strip &&
/sbin/ldconfig &&
make texlinks &&
mkdir -pv $TEXLIVE_PREFIX/tlpkg/TeXLive/ &&
install -v -m644 ../texk/tests/TeXLive/* $TEXLIVE_PREFIX/tlpkg/TeXLive/ &&
tar -xf ../../texlive-20220325-tlpdb-full.tar.gz -C $TEXLIVE_PREFIX/tlpkg
Note
Ne lancez make
texlinks qu'une seul fois. S'il est relancé, il
peut changer tous les liens symboliques de programmes vers
eux-mêmes ce qui les rend inutilisables.
Maintenant installez les fichiers supplémentaires en tant
qu'utilisateur root
:
tar -xf ../../texlive-20220321-texmf.tar.xz -C $TEXLIVE_PREFIX --strip-components=1
Debian a montré que les scripts python de latex-make
fonctionneront avec python3, donc mettez-les à jour
pour l'invoquer en exécutant la commande suivante en tant
qu'utilisateur root
:
for F in $TEXLIVE_PREFIX/texmf-dist/scripts/latex-make/*.py ; do
sed -i 's%/usr/bin/env python%/usr/bin/python3%' $F
done
Toujours en tant qu'utilisateur root
, initialisez le nouveau système (les
commandes fmtutil-sys
--all et mtxrun
--generate produiront beaucoup de sorties) :
mktexlsr &&
fmtutil-sys --all &&
mtxrun --generate
Vous pouvez continuer par asymptote-2.85, biber-2.18, dvisvgm-3.0.3 ou
xindy-2.5.1 si vous souhaitez les installer.
Explication des commandes
--prefix=, --bindir=, --datarootdir=,
--infodir=, --mandir= ...
: Ces paramètres
assurent que les fichiers installés depuis les sources écraseront
les fichiers correspondants installés précédemment par install-tl-unx afin que les méthodes
d'installation alternatives de texlive soient cohérentes.
--includedir=, --libdir=
...
: Ces paramètres assurent que les
bibliothèques et fichiers d'en-tête seront dans les répertoires du
texlive de l'année.
--disable-static
: Ce
paramètre empêche l'installation des versions statiques des
bibliothèques.
--enable-shared
: Crée
les versions partagées de libkpathsea
, libptexenc
, libsynctex
, libtexlua52
et libtexluajit
.
--with-system-...
: À
moins que ce paramètre ne soit utilisé, les versions incluses dans
les sources de ces bibliothèques seront compilées statiquement dans
les programmes qui les utilisent. Si vous décidez de ne pas
installer une bibliothèque recommandée, omettez le paramètre
correspondant.
--disable-dvisvgm : Comme
indiqué plus haut, la version intégrée de dvisvgm, qui a des
fichiers de configuration modifiés, ne peut pas être construite
avec les bibliothèques partagées du système.
--without-x
: utilisez ceci si
vous n'avez pas installé Xorg.
/sbin/ldconfig :
ceci doit être lancé ici pour que make texlinks puisse utiliser
kpsewhich.
make texlinks :
cela lance le script texlinks.sh pour créer les liens symboliques
depuis les formats du moteur. En pratique, plusieurs des cibles
comme xetex sont
maintenant des binaires séparés et pour ceux la signalera "fichiers
existants" ("file already exists").
tar -xf texlive-20220321-texmf.tar.xz
-C $TEXLIVE_PREFIX --strip-components=1 :
L'archive contient les fichiers pour le répertoire texmf-dist, et à
cause de sa taille nous ne voulons pas gaspiller de temps et
d'espace à le déballer et ensuite copier les fichiers.
install -v -m644
../texk/tests/TeXLive/*
$TEXLIVE_PREFIX/tlpkg/TeXLive/ : cela met les
modules perl TLConfig.pm
et
TLUtils.pm
dans le répertoire où
l'installateur binaire les place - c'est au début du PATH perl
@INC@ dans texlive quand l'installation utilise les paramètres de
configuration précédents. Sans ces modules, texlive est
inutilisable.
mktexlsr : Crée
un fichier ls-R
qui liste ce qui a
été installé - c'est utilisé par kpathsea pour trouver les fichiers
fmtutil-sys
--all : Ceci initialise les formats TeX, les
bases Metafont et les mémoires Metapost.
mtxrun
--generate : Ceci initialise le système
ConTeXt.
Contenu
Programmes installés:
Plus de 300 binaires et liens symboliques
vers des scripts
Bibliothèques installées:
libkpathsea.so, libptexenc.so,
libsynctex.so, libtexlua52.so, libtexluajit.so
Répertoires installés:
$TEXLIVE_PREFIX/bin,
$TEXLIVE_PREFIX/include, $TEXLIVE_PREFIX/lib,
$TEXLIVE_PREFIX/texmf-dist
Descriptions courtes
TeX programs
|
Les programmes inclus dans TeX sont trop nombreux pour les
lister individuellement. Référez-vous aux pages HTML et
PDF de chaque programme dans les nombreux fichiers html,
man ou pdf dans les sous-répertoires de 2022/texmf-dist/ . L'utilisation de
texdoc
pdflatex (remplacez pdflatex avec le nom de la
commande) peut aussi être utile.
|
libkpathsea.so
|
(kpathsearch) existe pour rechercher un fichier dans une
liste de répertoires et est utilisé par kpsewhich
|
libptexenc.so
|
est une bibliothèque pour pTeX (publishing TeX) japonnais
|
libsynctex.so
|
est la bibliothèque d'analyse SyncTeX (Synchronize
TeXnology)
|
libtexlua52.so
|
fournit Lua 5.2, modifié pour fonctionner avec LuaTeX
|
libtexluajit.so
|
fournit LuaJIT, modifié pour fonctionner avec LuaJITTeX
|