7.8 KiB
Les paquets de la liste obligatoire
Inventaire du chapitre IV, pas l’ordre de compilation. L’ordre est le chapitre 8 de LFS, décrit dans references/lfs.md.
Versions citées : livre LFS stable du 1er septembre 2025, quand le paquet y est encore. Le sujet laisse les versions libres. vim, bash, grub et udev sont des exemples : un équivalent est accepté.
Perl) dans le PDF est une coquille. Le paquet est Perl.
Le compilateur et ce sans quoi il ne marche pas
| Paquet | Rôle | Dans le LFS du 1er sept. 2025 |
|---|---|---|
| Binutils | Assembleur as et linker ld. Transforme la sortie de GCC en binaire |
2.45 |
| GCC | Compilateur C, C++, et la bibliothèque libgcc |
15.2.0 |
| Glibc | Bibliothèque C. Presque tous les programmes s’y lient. Elle parle au noyau | 2.42 |
| GMP | Grands nombres entiers. GCC en a besoin pour compiler | 6.3.0 |
| MPFR | Flottants à précision arbitraire. Même raison | 4.2.2 |
| MPC | Complexes, au-dessus de MPFR. GCC l’exige | 1.3.1 |
| Linux headers | Pas une ligne séparée du sujet. Les en-têtes du noyau disent à Glibc quels appels existent. Le livre les construit au chapitre 5 | Linux 6.16.1 |
| Make | Lit un Makefile et lance les compilations dans le bon ordre |
4.4.1 |
| M4 | Processeur de macros. Autoconf est écrit en M4 | 1.4.20 |
| Pkg-config | Répond « quels flags pour lier la bibliothèque X ? ». Le livre 2025 le fournit sous le nom Pkgconf | Pkgconf 2.5.1 |
GCC se construit après GMP, MPFR et MPC. Glibc se construit après les en-têtes du noyau.
Produire le script ./configure
| Paquet | Rôle | LFS 2025-09-01 |
|---|---|---|
| Autoconf | Produit le script configure à partir de configure.ac |
2.72 |
| Automake | Produit les Makefile.in à partir des Makefile.am |
1.18.1 |
| Libtool | Règles portables pour fabriquer des .so |
2.5.4 |
| Gettext | Traduction des messages des programmes. Beaucoup de configure le cherchent |
0.26 |
| Intltool | Même idée, pour les fichiers XML de traduction. Vieux, encore dans le livre | 0.51.0 |
Détail du fonctionnement : references/autotools.md.
Le shell et les commandes de tous les jours
| Paquet | Rôle | LFS 2025-09-01 |
|---|---|---|
| Bash | Shell. Exemple du sujet, remplaçable. LFS en fait /bin/sh |
5.3 |
| Coreutils | ls, cp, mv, cat, chmod, id… le socle POSIX |
9.7 |
| Diffutils | diff, cmp |
3.12 |
| Findutils | find, xargs |
4.10.0 |
| Gawk | awk. Le livre et beaucoup de scripts l’utilisent |
5.3.2 |
| Grep | Recherche de texte | 3.12 |
| Sed | Édition de flux. Les scripts de boot et ./configure s’en servent |
4.9 |
| Gzip | Compression .gz, et la commande zcat |
1.14 |
| Bzip2 | Compression .bz2 |
1.0.8 |
| Xz Utils | Compression .xz, format des archives du livre récent |
5.8.1 |
| Tar | Archives .tar. C’est ainsi que les sources arrivent |
1.35 |
| Patch | Applique un fichier .patch. Le chapitre 3 du livre en a quelques-uns |
2.8 |
| Less | Paginateur. man s’en sert pour afficher une page |
679 |
| File | Devine le type d’un fichier (ELF, ASCII…) |
5.46 |
| Ncurses | Affichage texte plein écran. menuconfig du noyau et vim s’en servent |
6.5 |
| Readline | Édition de ligne dans bash (flèches, historique) | 8.3 |
| Vim | Éditeur. Exemple du sujet. Un autre éditeur (nano, emacs) est un équivalent | 9.1.1629 |
| Shadow | useradd, passwd, /etc/login.defs. Sans lui, pas de comptes propres |
4.18.0 |
| Procps | ps, top, free. Lit /proc |
Procps-ng 4.0.5 |
| Psmisc | killall, fuser, pstree |
23.7 |
| Util-linux | mount, dmesg, login, fdisk, swapon. Indispensable au boot |
2.41.1 |
| E2fsprogs | mkfs.ext4, fsck.ext4. Crée et répare le système de fichiers des partitions |
1.47.3 |
| Kbd | Polices et claviers de la console texte (loadkeys) |
2.8.0 |
| Man-pages | Textes bruts des pages de manuel, section par section | 6.15 |
| Man-DB | La commande man qui affiche ces pages |
2.13.1 |
| Groff | Met en page les pages de manuel. man l’appelle |
1.23.0 |
| Bc | Calculatrice utilisée par les Makefile du noyau |
7.0.3 |
Bibliothèques que d’autres paquets exigent
| Paquet | Rôle | LFS 2025-09-01 |
|---|---|---|
| Zlib | Compression deflate. Le noyau, openssl éventuel, et beaucoup d’outils s’y lient | 1.3.1 |
| Attr | Attributs étendus des fichiers (setfattr) |
2.5.2 |
| Acl | Listes de contrôle d’accès, au-dessus des droits Unix classiques | 2.3.2 |
| Libcap | Capacités Linux : des privilèges fins à la place du tout-ou-rien de root | 2.76 |
| Libpipeline | Enchaîne des tubes. man s’en sert |
1.5.8 |
| GDBM | Petite base clé-valeur. Quelques outils historiques s’y lient | 1.26 |
| Expat | Parseur XML | 2.7.1 |
| XML::Parser | Module Perl au-dessus d’Expat. Intltool en dépend | 2.47 |
| Gperf | Génère des fonctions de hachage parfait. Utilisé à la construction, pas au quotidien | 3.3 |
Langages utilisés pendant la construction
| Paquet | Rôle | LFS 2025-09-01 |
|---|---|---|
| Perl | Le PDF écrit Perl). Des scripts de construction, dont le noyau, l’utilisent |
5.42.0 |
| Tcl | Langage des tests | 8.6.16 |
| Expect | Automatise un dialogue avec un programme. Sert aux tests | 5.45.4 |
| DejaGNU | Lance les suites de tests de GCC et Binutils, via Expect | 1.6.3 |
| Check | Cadre de tests unitaires en C. Présent dans les vieilles listes LFS. Absent du sommaire du 1er sept. 2025 | Pas dans ce sommaire |
| Flex | Génère un analyseur lexical. Bison et quelques paquets en ont besoin à la compilation | 2.6.4 |
| Bison | Génère un analyseur syntaxique | 3.8.2 |
| Texinfo | Format de doc GNU. info |
7.2 |
Démarrage, modules, comptes
| Paquet | Rôle | LFS 2025-09-01 |
|---|---|---|
| GRUB | Bootloader. Exemple du sujet. Charge vmlinuz-.... KFS le redemande |
2.12 |
| Sysvinit | PID 1 : init, et les commandes shutdown, reboot |
3.14 |
| Sysklogd | Journal des messages du noyau et des démons, vers /var/log |
2.7.2 |
| Kmod | lsmod, modprobe, insmod. Charge les .ko |
34.2 |
| Eudev | Fork de udev, indépendant de systemd. Charge les modules quand un périphérique apparaît | Plus dans le livre. Remplacé par « Udev from Systemd » 257.8 |
| Udev-lfs Tarball | Nom historique de l’archive udev livrée avec les vieux LFS | Plus dans le livre. Même rôle que la ligne précédente |
Kmod sait charger un module. Udev décide lequel, au moment où le matériel est annoncé dans /sys. Les deux vont ensemble. Le sujet dit « un kernel_module loader, comme udev » : le démon qui réagit, pas seulement la commande modprobe.
Réseau et temps
| Paquet | Rôle | LFS 2025-09-01 |
|---|---|---|
| IPRoute2 | ip addr, ip route. Remplace les vieux ifconfig et route |
6.16.0 |
| Inetutils | Clients réseau historiques : ping, hostname, parfois telnet |
2.6 |
| Iana-Etc | Fichiers /etc/protocols et /etc/services (numéros de ports) |
20250807 |
| Time Zone Data | Fuseaux horaires. Le livre les installe avec Glibc, pas comme un chapitre séparé | Via Glibc |
Inetutils et IPRoute2 ne suffisent pas à « avoir Internet » tout seuls. Il faut aussi une adresse, une route, et un DNS (/etc/resolv.conf), ce que le chapitre 9 du livre décrit. curl ou wget ne sont pas dans cette liste : le sujet les recommande à part, pour la soutenance.
Ce que le livre de 2025 ajoute et que le PDF ne liste pas
Python 3, OpenSSL, Meson, Ninja, lz4, zstd, libxcrypt, libelf, libffi, entre autres. Le noyau récent et une partie des outils ne se construisent plus sans. Les installer en plus est compatible avec « pouvoir installer des paquets ». Ce ne sont pas des lignes de l’inventaire noté.