Pendant un cycle de développement de LFS, les instructions du livre sont souvent modifiées pour s'adapter aux mises à jour de paquets ou pour profiter de nouvelles fonctionnalités des paquets mis à jour. Mélanger les instructions de plusieurs versions du livre peut causer des problèmes complexes. Ce genre de problème est en général le résultat de la réutilisation d'un script créé pour une version précédente de LFS. Une telle réutilisation est fortement découragée. Si vous réutilisez des scripts d'une version LFS précédente pour n'importe quelle raison, vous devrez faire attention à mettre à jour les scripts pour qu'ils correspondent à la version actuelle du livre LFS.
Voici des informations que vous devriez connaitre pour la construction des paquets :
Plusieurs paquets sont corrigés avant d'être compilés, mais seulement dans le cas où la correction est nécessaire pour résoudre un problème. Souvent, le correctif est nécessaire à la fois dans ce chapitre et dans les suivants, mais quelques fois lorsque le même paquet est construit plus d'une fois, le correctif n'est pas immédiatement nécessaire. Donc, ne vous inquiétez pas lorsque des instructions pour un correctif téléchargé semblent manquer. Des messages d'avertissements sur un décalage (offset) ou sur autre chose (fuzz) peuvent apparaître lors de l'application d'un correctif. Ne vous inquiétez pas pour ces messages, le correctif a bien été appliqué.
Pendant la compilation de la plupart des paquets, des messages d'avertissement défileront sur votre écran. Ceci est normal et peut être ignoré sans danger. Ces messages d'avertissement concernent généralement une utilisation obsolète, mais pas invalide, de la syntaxe de C ou de C++. Les standards C changent assez souvent et certains paquets n'ont pas encore été mis à jour. Ce n'est pas un véritable problème mais cela provoque les messages.
Vérifiez une dernière fois que la variable d'environnement
LFS
est configurée
correctement :
echo $LFS
Assurez-vous que le résultat contient le bon répertoire vers le
point de montage de la partition LFS, qui est /mnt/lfs
, suivant notre exemple.
Enfin, deux points importants doivent être précisés :
Les instructions de construction supposent que vous avez défini correctement les Prérequis du système hôte, y compris les liens symboliques :
bash est le shell utilisé.
sh est un lien symbolique vers bash.
/usr/bin/awk est un lien symbolique vers gawk.
/usr/bin/yacc est un lien symbolique vers bison ou un petit script qui exécute bison.
Voici un résumé du processus de construction.
Mettez tous les codes sources et les correctifs dans un
répertoire qui sera accessible depuis l'environnement
chroot, tel que /mnt/lfs/sources/
.
Déplacez-vous vers le répertoire /mnt/lfs/sources
.
En utilisant le programme tar, décompressez le paquet à construire. Dans les chapitres Chapitre 5 et Chapitre 6, assurez-vous d'être l'utilisateur lfs lors de l'extraction du paquet.
N'utilisez aucune autre méthode que la commande tar pour extraire le code source. En particulier, l'utilisation de cp -R pour copier l'arborescence ailleurs peut détruire les liens et l'horodatage de l'arborescence des sources et résulter en un échec à la construction.
Allez dans le répertoire créé lorsque le paquet a été décompressé.
Suivez les instructions pour construire le paquet.
Revenez au répertoire des codes sources lorsque la construction est terminée.
Supprimez le répertoire source que vous avez extrait sauf instruction contraire.