6.1. Introduction

Dans ce chapitre, nous entrons dans le site de construction et lançons la construction du système LFS. Autrement dit, nous entrons avec chroot dans le mini système Linux temporaire, faisons quelques préparations finales et lançons l'installation de tous les paquets un par un.

Nous arrivons à la dernière étape de l'installation de ce logiciel. Bien que, dans beaucoup de cas, les instructions d'installation pourraient être plus courtes et plus génériques, nous avons opté pour fournir les instructions complètes pour chaque paquet et minimiser ainsi les possibilités d'erreurs. La clé pour apprendre ce qui fait fonctionner un système Linux est de savoir à quoi sert chaque paquet et pourquoi vous (ou le système) en avez besoin.

Nous ne vous recommandons pas d'utiliser les optimisations. Elles peuvent faire qu'un programme s'exécute un peu plus rapidement, mais elles peuvent aussi causer des problèmes de compilation et des difficultés à l'exécution de ce programme. Si un paquet refuse de compiler lors de l'utilisation d'optimisation, essayez de le compiler sans optimisation pour voir si cela corrige le problème. Même si le paquet compile avec les optimisations, il y a un risque qu'il ait été mal compilé à cause des interactions complexes entre le code et les outils de construction. Remarquez aussi que l'utilisation des options -march et -mtune peut causer des problèmes avec les paquets de la chaîne d'outils (Binutils, GCC et Glibc). Le petit potentiel de gains obtenu en utilisant les optimisations de compilation est souvent minime comparé aux risques. Les utilisateurs construisant une LFS pour la première fois sont encouragés à construire sans optimisations personnalisées. Le système sera toujours très rapide et restera stable en même temps.

L'ordre dans lequel les paquets sont installés dans ce chapitre a besoin d'être strictement suivi pour s'assurer qu'aucun programme n'acquiert accidentellement un chemin ayant comme référence /tools en dur. Pour la même raison, ne compilez pas différents paquets en parallèle. La compilation en parallèle peut permettre de gagner du temps (tout particulièrement sur les machines à deux CPU), mais cela pourrait résulter en un programme contenant un chemin codé en dur vers /tools, ce qui fera arrêter le programme de fonctionner si ce répertoire est supprimé.

Avant les instructions d'installation, chaque page d'installation fournit des informations sur le paquet, incluant une description concise de ce qu'il contient, approximativement combien de temps prendra la construction et les autres paquets nécessaires lors de cette étape de construction. Suivant les instructions d'installation, il existe une liste de programmes et de bibliothèques (avec quelques brèves descriptions de ceux-ci) que le paquet installe.

[Note]

Note

Les valeurs SBU et l'espace disque requis incluent les données de suites de tests pour tous les paquets du chapitre 6 auxquels elles sont applicables.

6.1.1. À propos des bibliothèques

En général, les éditeurs de LFS déconseillent la construction et l'installation de bibliothèques statiques. L'objectif original de la plupart des bibliothèques statique a été rendu obsolète dans un système Linux moderne. Par ailleurs la liaison statique de bibliothèques dans un programme peut être nuisible. Si une mise à jour des bibliothèques est nécessaire pour retirer un problème de sécurité, tous les programmes qui utilisent cette bibliothèque vont devoir être liés à nouveau vers la nouvelle bibliothèque. Depuis que l'utilisation de bibliothèques statiques n'est plus évident, les programmes relatifs (et les procédures de liage) ne doivent plus systématiquement être connues.

Dans les procédures du chapitre 6, nous retirons ou désactivons l'installation de la plupart des bibliothèques statiques. Dans certains cas, en particulier pour glibc et gcc, l'utilisation de bibliothèques statique est indispensable au processus de construction du paquet en général. Généralement cela ce fait en activant le drapeau --disable-static lors de l'exécution de configure. Dans d'autres cas, des autres moyens sont nécessaires.

Pour une discussion plus complète à propos des bibliothèques, regardez la discussion Bibliothèques : statiques ou partagées ? dans le livre BLFS.