Estimation du temps de construction: 3 minutes Estimation de l'espace disque requis: 49 Mo |
A partir d'un Fileutils lié statiquement, les programmes peuvent causer des erreurs de segmentation sur certains systèmes, si votre distribution possède Glibc-2.2.3 ou supérieure installée. Cela semble aussi apparaître souvent sur des machines disposant d'un processeur AMD; cependant quelques systèmes à base de processeurs Intel présentent les mêmes disfonctionnements. Si votre système appartient à cette catégorie, appliquez le patch.
Noter que, dans certains cas, utiliser ce patch aboutira à des problèmes de compilation du package, même si votre système dispose d'un processeur AMD et de Glibc-2.2.3 (ou supérieur) installée. Si c'est le cas, vous aurez besoin de supprimer le répertoire fileutils-4.1 et de le déballer de nouveau de l'archive tar. Nous croyons que cela peut être le cas si votre distribution a modifié Glibc-2.2.3, mais aucun détail n'est disponible pour l'instant.
Pour permettre au package de compiler correctement sur des machines AMD/Glibc-2.2.3, lancez la commande suivante. N'essayez pas cette correction si vous n'avez pas Glibc-2.2.3 installé. Cela créerait toutes sortes de problèmes de compilation.
patch -Np1 -i ../fileutils-4.1.patch |
Installez Fileutils en lançant les commandes suivantes:
LDFLAGS=-static \ ./configure --disable-nls --prefix=$LFS/static && make && make install |
Une fois Fileutils installé, vous pouvez tester si le problème d'erreur de segmentation a été supprimé en lançant $LFS/static/bin/ls. Si cela fonctionne, tout va bien. Sinon, vous devez refaire l'installation en utilisant les commandes sed si vous ne les aviez pas utilisées, ou sans les commandes sed si vous les aviez utilisées.
cp lib/Makefile.in lib/Makefile.in.backup && sed -e 's/\(.*\)\(fopen-safer\.c \)\\/\1\2atexit.c \\/' \ -e 's/\(.*\)\(idcache\$U\.\$.*\)\\/\1\2atexit$U.$(OBJEXT) \\/' \ lib/Makefile.in.backup > lib/Makefile.in: Cela corrige un problème lors de la construction statique de fileutils sur un système comprenant glibc 2.2.3. Si cela n'est pas fait, les programmes du package fileutils pourraient causer des erreurs de segmentation une fois chroot lancé à partir du chapitre 6.
patch -Np1 -i ../fileutils-4.1.patch: Cela est utilisé pour corriger un problème lors de la construction statique de fileutils à partir de systèmes glibc 2.2.3. Si ceci n'est pas fait, alors il existe une possibilité pour que tous les programmes fileutils causant des erreurs de segmentation, une fois entré dans chroot au cahpitre 6.
Dernière vérification effectuée auprès de la version 4.1.
chgrp, chmod, chown, cp, dd, df, dir, dircolors, du, install, ln, ls, mkdir, mkfifo, mknod, mv, rm, rmdir, shred, sync, touch et vdir
chgrp remplace le groupe des propriétaires des fichiers spécifiés par celui dont le nom ou le numéro est passé en paramètre.
chmod change les permissions des fichiers spécifiés en fonction du mode, ce mode pouvant être une représentation symbolique des changements à effectuer, ou une représentation octale d'un nombre représentant le champ de bits des nouvelles permissions.
chown change le propriétaire et/ou le groupe de propriétaires des fichiers spécifiés.
cp copie des fichiers d'un répertoire à un autre.
dd copie un fichier (de l'entrée standard vers la sortie standard, par défaut) en fonction d'une taille de bloc et des options de conversion du fichier données par l'utilisateur.
df affiche l'espace disque disponible du système de fichiers contenant les fichiers passés en argument. Sans argument, df indiquera les quantités correspondant à tous les systèmes de fichiers montés.
dir et vdir sont des versions de ls avec des formats d'affichage différents. Ces programmes listent tous les fichiers ou répertoires donnés en argument. Le contenu des répertoires est trié alphabétiquement. Pour ls, les fichiers sont affichés en colonnes par défaut et triés verticalement si la sortie standard est un terminal; ils sont affichés ligne par ligne dans le cas contraire. Pour dir, les fichiers sont par défaut affichés en colonnes et triés verticalement. Pour vdir, l'affichage par défaut est le format long.
dircolors affiche une liste de commandes permettant de définir la variable d'environnement LS_COLOR. La variable LS_COLOR est utilisée pour changer les couleurs d'affichage par défaut de la commande ls et d'autres utilitaires.
du affiche l'espace disque utilisé par chaque argument et chacun de ces sous-répertoires.
install copie les fichiers puis positionne leurs permissions et, si possible, leur propriétaire et leur groupe.
ln crée des liens matériels ou symboliques entre fichiers.
mkdir crée un répertoire correspondant à chacun des noms mentionnés en argument.
mkfifo crée un fichier FIFO avec les noms passés en argument.
mknod crée un fichier FIFO, fichier spécial en mode caractère, ou fichier spécial en mode bloc, avec le nom passé en argument.
mv déplace des fichiers d'un répertoire à un autre ou les renomme, selon les arguments qui lui sont passés.
rm efface des fichiers ou des répertoires.
rmdir efface des répertoires, s'ils sont vides.
shred efface un fichier de façon sûre, en écrasant son contenu afin qu'il ne puisse pas être récupéré.
sync force l'écriture des blocs modifiés et met à jour le super bloc.
touch remplace le temps d'accès et de modification des fichiers passés en argument par l'heure et la date courantes. S'ils n'existent pas, des fichiers vides sont créés.
Dernière vérification effectuée auprès de la version 4.1.
Bash: sh
Binutils: ar, as, ld, ranlib
Diffutils: cmp
Fileutils: chmod, cp, install, ln, ls, mkdir, mv, rm, rmdir
Gettext: msgfmt, xgettext
Gcc: cc, cc1, collect2, cpp0, gcc
Grep: egrep, fgrep, grep
Make: make
Perl: perl
Sed: sed
Sh-utils: basename, echo, expr, hostname, sleep, uname
Texinfo: install-info
Textutils: cat, tr