Décompactez glibc-linuxthreads dans le répertoire glibc-2.2.1, et non dans /usr/src.
Installez Glibc en lançant les commandes suivantes:
mknod -m 0666 /dev/null c 1 3 &&
touch /etc/ld.so.conf &&
mkdir /usr/src/glibc-build &&
cd /usr/src/glibc-build &&
sed s/"\$(PERL)"/"\/usr\/bin\/perl"/ \
../glibc-2.2.1/malloc/Makefile > tmp~ &&
mv tmp~ ../glibc-2.2.1/malloc/Makefile &&
sed "s/root/0/" ../glibc-2.2.1/login/Makefile > tmp~ &&
mv tmp~ ../glibc-2.2.1/login/Makefile &&
../glibc-2.2.1/configure \
--prefix=/usr --enable-add-ons \
--libexecdir=/usr/bin &&
sed s/"cross-compiling = yes"/"cross-compiling = no"/ \
config.make > config.make~ &&
mv config.make~ config.make &&
make &&
make install &&
make localedata/install-locales
En sortant de l'environnement chroot puis en y en y rentrant à nouveau, vous pourrez vous débarrasser du message "I have no name!" dans l'invite de commande, qui est due à l'incapacité de bash de transformer un identifiant d'utilisateur en nom d'utilisateur. Vous n'êtes pas obligé de sortir et rentrer dans chroot, mais ceci est fortement recommandé pour garantir un bash fonctionnant correctement.
Lancez les commandes suivantes pour faire cela:
logout
chroot $LFS /usr/bin/env -i HOME=/root \
TERM=$TERM /bin/bash --login
mknod -m 0666 /dev/null c 1 3: Glibc a besoin d'un périphérique null pour compiler correctement. Tous les autres périphériques seront créés dans la section suivante.
touch /etc/ld.so.conf Une des étapes finales de l'installation de Glibc est de lancer ldconfig pour mettre à jour le cache du chargeur dynamique. Si ce fichier n'est pas présent, Glibc se terminera en erreur indiquant qu'il ne peut lire le fichier. Nous créons donc un fichier vide pour cela (le fichier vide entraînera l'utilisation par défaut par Glibc de /lib et /usr/lib, ce qui est parfait pour l'instant).
--enable-add-ons: Ceci active l'extension que nous avons installée avec Glibc: linuxthreads.
Le package Glibc contient la bibliothèque GNU C.
La bibliothèque C est un ensemble de fonctions couramment utilisées dans les programmes. Ainsi, un programmeur n'a pas besoin de créer ses propres fonctions pour chaque tâche de base. Les opérations les plus courantes comme écrire une ligne à l'écran sont déjà présentes et à la disposition du programmeur.
La bibliothèque C (comme, actuellement, presque toutes les bibliothèques) est fournie en deux versions: dynamique et statique. En bref, quand un programme utilise une bibliothèque C statique, le code de la bibliothèque C est copié dans le fichier exécutable. Quand un programme utilise une bibliothèque dynamique, cet exécutable ne contiendra pas le code de la bibliothèque C, mais simplement une routine qui chargera les fonctions depuis la bibliothèque au moment de l'exécution du programme. Cela signifie une réduction significative de la taille du fichier du programme. La documentation fournie avec la bibliothèque C décrit cela en détail, car cela est trop compliqué à expliquer ici en une ou deux lignes.
Précédent | Sommaire | Suivant |
Entrer dans l'environnement chroot | Niveau supérieur | Créer les périphériques |