Subversion Repositories svn LFS-FR

Compare Revisions

Ignore whitespace Rev 352 → Rev 353

/branches/LFS-4_1/lfs/chapter06/aboutdebug.xml
3,14 → 3,14
<?dbhtml filename="aboutdebug.html" dir="chapter06"?>
 
<para>La plupart des programmes et des bibliothèques sont compilés, par défaut,
avec des symboles de débogage (avec l'option -g de gcc).</para>
avec les informations de débogage (avec l'option -g de gcc).</para>
 
<para>Lors du débogage d'un programme ou d'une librairie qui a été compilée
avec les informations de débogage inclues, le débogueur ne vous donnera pas
avec les options de débogage, le débogueur vous donnera non
seulement les adresses mémoires, mais aussi les noms des routines et des
variables.</para>
 
<para>Mais l'inclusion de ces symboles de débogage grossit le programme
<para>Mais l'inclusion de ces informations de débogage grossit le programme
ou la bibliothèque de manière significative. Pour avoir une idée de la
quantité d'espace que ces symboles occupent, regarder ceci :</para>
 
17,38 → 17,39
<itemizedlist>
 
<listitem><para>Un binaire Bash
dynamique avec symboles de débogage: 1200 Ko.</para></listitem>
avec inforamtions de débogage: 1200 Ko.</para></listitem>
 
<listitem><para>Un binaire Bash
dynamique sans symboles de débogage: 478 Ko.</para></listitem>
sans informations de débogage: 478 Ko.</para></listitem>
 
<listitem><para>Fichiers glibc et gcc (/lib et /usr/lib)
avec symboles de débogage: 87 Mo.</para></listitem>
avec informations de débogage: 87 Mo.</para></listitem>
 
<listitem><para>Fichiers glibc et gcc
sans symboles de débogage: 16 Mo.</para></listitem>
sans informations de débogage: 16 Mo.</para></listitem>
 
</itemizedlist>
 
<para>Les tailles peuvent varier un peu selon le compilateur utilisé et
la version de labibliothèque C utilisée. Mais lors d'une comparaison
entre des programmes avecles symboles de débogage et ceux sans, la
différence sera généralement d'unfacteur 2 à 5.</para>
la version de la bibliothèque C utilisée. Mais lors d'une comparaison
entre des programmes avec les informations de débogage et ceux sans, la
différence sera généralement d'un facteur 2 à 5.</para>
 
<para>Comme la plupart des gens n'utiliseront probablement jamais un débogueur
sur leurs logiciels, beaucoup de place disque peut être gagnée en supprimant
ces symboles.</para>
sur leurs exécutable systeme, beaucoup de place disque peut être gagnée en supprimant
ces informations.</para>
 
<para>Pour enlever les symboles de débogage d'un binaire (qui doit être de
typea.out ou ELF), exécutez <userinput>strip --strip-debug filename</userinput>.
Les jokers peuvent être utilisés pour supprimer pour traiter plusieurs
<para>Pour enlever les informations de débogage d'un binaire (qui doit être de
type a.out ou ELF), exécutez <userinput>strip --strip-debug
filename</userinput>.
Les jokers peuvent être utilisés pour traiter plusieurs
fichiers (utilisez quelque chose comme
<userinput>strip --strip-debug $LFS/usr/bin/*</userinput>).</para>
 
<para>Pour vous faciliter l'opération, le chapitre 9 comprend une commande
<para>Pour vous faciliter la tache, le chapitre 9 comprend une commande
unique pour supprimer tous les symboles de débogage des programmes et
bibliothèques de votre système. Vous obtiendrez des informations
supplémentaires dans l'astuce <ulink url="&hints-root;optimization.txt" />.
bibliothèques de votre système. des informations supplémentaires
sont disponibles dans l'astuce <ulink url="&hints-root;optimization.txt" />.
</para>
 
</sect1>
/branches/LFS-4_1/lfs/chapter06/bison-inst.xml
7,7 → 7,7
 
<para><screen><userinput>./configure --prefix=/usr</userinput></screen></para>
 
<para>Continuez avec la compilation du package:</para>
<para>Continuez en compilant le package:</para>
 
<para><screen><userinput>make</userinput></screen></para>
 
/branches/LFS-4_1/lfs/chapter06/autoconf-inst.xml
7,11 → 7,11
 
<para><screen><userinput>./configure --prefix=/usr</userinput></screen></para>
 
<para>Continuez avec la compilation du package:</para>
<para>Continuez en compilant le package:</para>
 
<para><screen><userinput>make</userinput></screen></para>
 
<para>Et finissez l'installation du package:</para>
<para>Et finissez en installant le package:</para>
 
<para><screen><userinput>make install</userinput></screen></para>
 
/branches/LFS-4_1/lfs/chapter06/glibc-inst.xml
13,7 → 13,7
d'optimisation par défaut (ceci inclut les options -march et -mcpu). Donc, si
vous avez défini des variables d'environnement, telles que CFLAGS et CXXFLAGS,
qui annulent les optimisations par défaut, nous vous recommandons de les
supprimer pour la construction de GCC.</para>
supprimer pour la construction de Glibc.</para>
 
<para>Habituellement, compiler Glibc d'une toute autre façon que ce que le livre
suggère fait courir un gros risque à votre système.</para>
43,9 → 43,9
 
<para>Il existe un problème potentiel qui fait que des binaires liés
statiquement se "plantent" avec la Glibc-2.2 et précédentes. Même si les
binaires statiques ont toutes les parties nécessaires de la Glibc intégrée, ils
binaires statiques ont toutes les parties nécessaires de la Glibc intégrées, ils
sont toujours liés à un ensemble externe de bibliothèques: les bibliothèques
NSS de Glibc. Ces bibliothèques, en plus d'autres choses, indiquent que les
NSS de Glibc. Ces bibliothèques, en plus d'autres choses, indiquent aux
programmes où la base de données de mots de passe du système est
<filename>/etc/password</filename>, ou NIS ou sur tout autre schéma qui a été
configuré.</para>
52,15 → 52,15
 
<para>Glibc a réalisé quelques changements depuis la version 2.2.x et le nouveau
code NSS est incompatible avec l'ancien. Donc lorsque Glibc est installé, il
installera ses nouvelles bibliothèques NSS et les programmes statiques
chargeront leurs nouvelles bibliothèques NSS et commencera à planter avec des
installera ses nouvelles bibliothèques NSS, les programmes statiques
chargeront ces nouvelles bibliothèques NSS et s'arrèteront sur des
erreurs de <emphasis>segmentation fault</emphasis>. Ce correctif défait un
certain nombre de changements pour arranger ce problème.</para>
certain nombre de changements pour contourner ce problème.</para>
 
<para>Si vous commencez le chapitre 5 avec un système hôte utilisant Glibc-2.2.x
ou plus ancien, vous devez appliquer le correctif suivant. Nous installerons
encore Glibc à la fin de ce chapitre pour supprimer ce correctif, donc vous
aurez une Glibc comme les développeurs le souhaitent.</para>
aurez une Glibc telle que les développeurs la souhaitent.</para>
 
<para><screen><userinput>patch -Np1 -i ../glibc-&glibc-libnss-patch-version;-libnss.patch</userinput></screen></para>
 
87,11 → 87,11
<itemizedlist>
<listitem><para><userinput>--disable-profile</userinput> : Ceci désactive la
construction des biliothèques avec des informations de profilage. Cette commande
peut être omise si vous plannifiez de faire du profiling.
peut être omise si vous plannifiez de faire du profilage.
</para></listitem>
 
<listitem><para><userinput>--enable-add-ons</userinput> : Ceci active tous les
modules supplémentaires que nous avons installé avec Glibc, c'est-à-dire
modules supplémentaires que nous avons installés avec Glibc, c'est-à-dire
linuxthreads dans notre cas.</para></listitem>
 
<listitem><para><userinput>--libexecdir=/usr/bin</userinput> : Ceci fera que le
118,14 → 118,14
binaires.</para>
 
<para>Comme Glibc n'a pas encore été installé, un des tests, qui ont été lancé
par le script configure, a échoué. Ce test est supposé tester
par le script configure, a échoué. Ce test est supposé interroger
<filename>gcc</filename> pour déterminer si, oui ou non, un cross-compilateur
est installé. Néanmoins, Glibc a besoin d'être déjà installé pour lancer ce
test. Comme le test échoue, le script configure suppose automatiquement que
nous avons un cross-compilateur. Nous devons laisser cette information et dire
explicitement à Glibc que nous ne faisons pas de cross-compilation. Ne pas
faire cela impose un certain nombre d'effets de bord non voulus, tel que ne pas
installer les fichiers timezone.</para>
faire cela induirait un certain nombre d'effets de bord non voulus, tel que
ne pas installer les fichiers timezone.</para>
 
<para><screen><userinput>echo "cross-compiling = no" &gt; configparms</userinput></screen></para>
 
134,23 → 134,24
<para><screen><userinput>make</userinput></screen></para>
 
<para>Nous continuerons avec l'installation du package. Les pages man de
Linuxthreads ne vont pas être installés à ce moment parce qu'il nécessite une
installation fonctionnelle de Perl. Nous installerons Perl plus tard sur ce
Linuxthreads ne vont pas être installées à ce moment parce qu'elles nécessitent
une installation fonctionnelle de Perl. Nous installerons Perl plus tard sur ce
chapitre, et les pages man seront installées lorsque Glibc sera installé pour la
deuxième fois à la fin de ce chapitre.</para>
 
<para><screen><userinput>make install</userinput></screen></para>
 
<para>Les locales (utilisées par Glibc pour que votre système Linux puisse
parler une autre langue) n'ont pas été installées lorsque vous avez lancé la
commande précédente, donc nous devons le faire nous-même maintenant:</para>
<para>Les <quote>locales</quote> (utilisées par Glibc pour que votre système
Linux puisse parler une autre langue) n'ont pas été installées lorsque vous
avez lancé la commande précédente, donc vous devez le faire vous-même
maintenant:</para>
 
<para><screen><userinput>make localedata/install-locales</userinput></screen></para>
 
<para>Une alternative au lancement de le commande précédente est d'installer
seulement ces locales dont vous aurez besoin. On peut y arriver en utilisant la
commande localedef. Les informations là-dessus sont disponibles dans le fichier
<filename>INSTALL</filename>, du répertoire
seulement les <quote>locales</quote> dont vous aurez besoin. On peut y arriver
en utilisant la commande localedef. Les informations à ce sujet sont
disponibles dans le fichier <filename>INSTALL</filename>, du répertoire
<filename>glibc-&glibc-version;</filename>.</para>
 
<para>Pour finir l'installation, nous relancerons Bash pour qu'il utilise les
/branches/LFS-4_1/lfs/chapter06/mtablink.xml
2,7 → 2,7
<title>Créer le fichier /etc/mtab</title>
<?dbhtml filename="mtablink.html" dir="chapter06"?>
 
<para>La prochaine étape est de créer le fichier <filename>/etc/mtab</filename>.
<para>L'étape suivante sera de créer le fichier <filename>/etc/mtab</filename>.
</para>
 
<para><screen><userinput>touch /etc/mtab</userinput></screen></para>
/branches/LFS-4_1/lfs/chapter06/binutils-inst.xml
19,13 → 19,13
 
<para><screen><userinput>../binutils-&binutils-version;/configure --prefix=/usr --enable-shared</userinput></screen></para>
 
<para>Continuez avec la compilation du package:</para>
<para>Continuez en compilant le package:</para>
 
<para><screen><userinput>make tooldir=/usr</userinput></screen></para>
 
<para>Normalement, le répertoire <emphasis>tooldir</emphasis> (où les
exécutables vont se trouver) vaut $(exec_prefix)/$(target_alias) qui s'étendra
en, par exemple, /usr/i686-pc-linux-gnu. Comme nous construisons seulement pour
en, par exemple, /usr/i686-pc-linux-gnu. Comme nous compilons seulement pour
notre propre système, nous n'avons pas besoin de ce répertoire spécifique à la
cible dans /usr. Cette configuration aurait été utilisée si le système avait été
utilisé pour faire de la cross-compilation (par exemple en compilant un package
41,7 → 41,7
<para><screen><userinput>make tooldir=/usr install-info</userinput></screen></para>
 
<para>Quelques packages nécessitent l'entête de <emphasis>libiberty</emphasis>
pour construire. Pour terminer ces packages, installez le fichier:</para>
afin de se compiler. Pour terminer ces packages, installez le fichier:</para>
 
<para><screen><userinput>cp ../binutils-&binutils-version;/include/libiberty.h /usr/include</userinput></screen></para>
 
/branches/LFS-4_1/lfs/chapter06/pwdgroup.xml
3,7 → 3,7
<?dbhtml filename="pwdgroup.html" dir="chapter05"?>
 
<para>Pour que <emphasis>root</emphasis> puisse se connecter et pour que le nom
"root" soit reconnue, il doit exister les entrées adéquates dans les fichiers
"root" soit reconnu, il doit exister les entrées adéquates dans les fichiers
<filename>/etc/passwd</filename> et <filename>/etc/group</filename>.</para>
 
<para>Créez le fichier <filename>/etc/passwd</filename> en lançant la commande
37,7 → 37,7
"root", le LSB (<ulink url="http://www.linuxbase.org"/>) recommande seulement un
groupe "bin", avec un GID de 1. Tous les autres noms de groupe et GIDs peuvent
être choisis librement par l'utilisateur, car les packages bien écrits ne
dépendent pas du numéro GID mais utilise le nom du groupe.</para>
dépendent pas du numéro GID mais utilisent le nom du groupe.</para>
 
</sect1>
 
/branches/LFS-4_1/lfs/chapter06/zlib-inst.xml
22,13 → 22,13
<para><screen><userinput>make LIBS="libz.so.1.1.4 libz.a" install</userinput></screen></para>
 
<para>La bibliothèque partagée zlib devrait être installée dans le répertoire
<filename>/lib</filename>. De cette façon, au cas où vous devez lancer sans le
répertoire <filename>/usr</filename>, des programmes vitaux pour le système
auront toujours accès à cette bibliothèque:</para>
<filename>/lib</filename>. De cette façon, au cas où vous devriez démarrer sans
le répertoire <filename>/usr</filename>, des programmes vitaux pour le système
auraient toujours accès à cette bibliothèque:</para>
 
<para><screen><userinput>mv /usr/lib/libz.so.* /lib</userinput></screen></para>
 
<para>Le lien symbolique <filename>/usr/lib/libz.so</filename> est lié à un
<para>Le lien symbolique <filename>/usr/lib/libz.so</filename> renvoie à un
fichier qui n'existe plus, parce que nous l'avons déplacé. Créez un lien
symbolique vers le nouvel emplacement de la bibliothèque:</para>
 
/branches/LFS-4_1/lfs/chapter06/introduction.xml
2,13 → 2,13
<title>Introduction</title>
<?dbhtml filename="introduction.html" dir="chapter06"?>
<para>Dans ce chapitre, nous entrons le site de construction et démarrons
<para>Dans ce chapitre, nous entrons dans le site de construction et démarrons
la construction de notre système LFS. C'est-à-dire, nous entrons avec chroot
dans le mini système Linux temporaire, et lançons l'installation de tous les
packages un par un.</para>
<para>L'installation de tous les logiciels est plutôt simple et vous allez
probablement penser qu'il est tellement plus facile et plus court de donner les
probablement penser qu'il serait beaucoup plus rapide de donner les
instructions génériques d'installation pour un package et de seulement
expliquer en détail l'installation des packages nécessitant une méthode
alternative. Même si nous sommes d'accord avec ceci, nous avons choisi de
24,10 → 24,10
persiste.</para>
 
<para>S'il vous plait, n'installez pas plus d'un package à la fois, même si cela
peut vous sauver du temps (spécialement avec des machines bi-processeur). Si
vous installez le mauvais package au mauvais moment, cela peut inscrire en dur
le chemin du répertoire <filename class="directory">$LFS/static</filename> dans
les programmes, ce qui empêchera certains programmes de fonctionner
peut vous faire gagner du temps (spécialement avec des machines bi-processeur).
Si vous installez le mauvais package au mauvais moment, cela peut inscrire en
dur le chemin du répertoire <filename class="directory">$LFS/static</filename>
dans les programmes, ce qui empêchera certains programmes de fonctionner
correctement une fois le répertoire static supprimé. L'ordre dans lequel les
packages sont installés dans ce chapitre doit être suivi scrupuleusement pour
s'assurer qu'aucun chemin vers static n'est inscrit en dur.</para>
/branches/LFS-4_1/lfs/chapter06/kernel-exp-headers.xml
5,9 → 5,8
pas de liens</title>
 
<para>Auparavant, une pratique commune consistait à créer des liens symboliques
pour les répertoires
<filename class="directory">/usr/include/{linux,asm}</filename> vers
respectivement
pour les répertoires <filename
class="directory">/usr/include/{linux,asm}</filename> vers respectivement
<filename class="directory">/usr/src/linux/include/{linux,asm}</filename>.
Ceci est une <emphasis>mauvaise</emphasis> idée d'après cet extrait d'un message
de Linus Torvalds sur la liste de diffusion du noyau Linux:</para>
22,7 → 21,7
anciens entêtes du noyau 2.2.13, même si je n'ai pas lancé cette version du
noyau depuis un _loong_ moment. Mais glibc a été compilé avec, donc ces
entêtes correspondent aux objets de la bibliothèque.
 
Et cela correspond à l'environnement suggéré depuis au moins les cinq dernières
années. Je ne sais pas pourquoi l'idée du lien symbolique est toujours vivante,
comme un mauvais zombie. Pratiquement toutes les distributions conservent
30,13 → 29,6
aller sous "/usr/src/linux" même si ce n'est plus vrai depuis _trèès_
longtemps.</screen>
 
<para>La partie importante là-dedans correspond au moment où il indique que les
entêtes doivent être <emphasis>ceux avec lesquels glibc a été
compilé</emphasis>. Ces entêtes doivent rester accessibles et en les copiant,
nous nous assurons de suivre ces recommandations. Notez aussi que tant que ces
liens symboliques ne sont pas créés, il est tout à fait correct d'avoir les
sources du noyau sous <filename>/usr/src/linux</filename>.</para>
 
<para>La partie essentielle se trouve là où Linus indique que les fichiers
d'entête doivent être <emphasis>ceux avec lesquels gblic a été
compilé</emphasis>. Ces entêtes doivent être utilisés plus tard lorsque vous
/branches/LFS-4_1/lfs/chapter06/bash-inst.xml
7,7 → 7,7
 
<para><screen><userinput>./configure --prefix=/usr --bindir=/bin</userinput></screen></para>
 
<para>Continuez avec la compilation du package:</para>
<para>Continuez en compilant le package:</para>
 
<para><screen><userinput>make</userinput></screen></para>
 
/branches/LFS-4_1/lfs/chapter06/changingowner.xml
6,26 → 6,26
Néanmoins, ce compte utilisateur existe seulement sur le système hôte. Bien
que vous puissiez supprimer le répertoire <filename
class="directory">/static</filename> une fois que vous avez terminé votre
système LFS, vous pouvez vouloir le conserver, par exemple pour construire
d'autres systèmes LFS. Mais si vous conservez le répertoire <filename
class="directory">/static</filename>, vous finirez avec des fichiers appartenant
à un identifiant utilisateur sans compte correspondant. C'est dangereux car un
compte utilisateur créé après pourrait obtenir cet identifiant utilisateur et
devenir soudainement le propriétaire du répertoire <filename
class="directory">/static</filename> et des fichiers contenus. Ceci peut
permettre la manipulation du répertoire <filename
système LFS, vous pourriez vouloir le conserver, par exemple pour construire
d'autres systèmes LFS. Mais si vous conservez ce répertoire , vous finirez
avec des fichiers appartenant à un identifiant sans compte correspondant.
Ceci est dangereux car par la suite un compte utilisateur pourrait obtenir cet
identifiant et devenir soudainement le propriétaire du répertoire <filename
class="directory">/static</filename> et les fichiers qu'il contient. Ceci
pourrait permettre la manipulation du répertoire <filename
class="directory">/static</filename> par un utilisateur non privilégié.</para>
 
<para>Pour éviter ce problème, vous pouvez ajouter l'utilisateur
<emphasis>lfs</emphasis> dans votre nouveau système LFS plus tard en créant le
fichier <filename>/etc/passwd</filename>, en prenant d'assigner le bon
identifiant utilisateur et groupe. Sinon, vous pouvez (et le livre supopse que vous avez) lancer la commande suivante maintenant, pour assigner le contenu du
répertoire <filename class="directory">/static</filename> à l'utilisateur root
<emphasis>root</emphasis> en lançant les commandes suivantes:</para>
<emphasis>lfs</emphasis> dans votre nouveau système LFS en créant plus tard le
fichier <filename>/etc/passwd</filename>, et en prenant garde d'assigner le bon
identifiant utilisateur et groupe. Sinon, vous pouvez (et le livre va dans ce
sens) dorset déjà lancer la commande suivante afin d'assigner le contenu du
répertoire <filename class="directory">/static</filename> à l'utilisateur root
<emphasis>root</emphasis> :</para>
 
<para><screen><userinput>chown -R 0:0 /static</userinput></screen></para>
 
<para>La commande utilise "0:0" au lieu de "root:root", cat chown n'est pas
<para>La commande utilise "0:0" au lieu de "root:root", car chown n'est pas
capable de résoudre le nom "root" tant que glibc n'est pas installé.</para>
 
</sect1>
/branches/LFS-4_1/lfs/chapter06/chapter06.xml
1,5 → 1,5
<chapter id="chapter06">
<title>Installation les logiciels du système de base</title>
<title>Installation des logiciels du système de base</title>
<?dbhtml filename="chapter06.html" dir="chapter06"?>
 
&c6-introduction;
/branches/LFS-4_1/lfs/chapter06/bzip2-inst.xml
3,16 → 3,16
<sect2>
<title>Installation de Bzip2</title>
 
<para>Commencez la compilation du package:</para>
<para>Commencez en compilatant le package:</para>
 
<para><screen><userinput>make -f Makefile-libbz2_so</userinput></screen></para>
 
<para>L'option <emphasis>-f</emphasis> fait que bzip2 est construit en utilisant
<para>L'option <emphasis>-f</emphasis> fait que bzip2 est compilé en utilisant
un fichier <filename>Makefile</filename> différent, dans ce cas le fichier
<filename>Makefile-libbz2_so</filename>, qui crée une bibliothèque dynamique
<filename>libbz2.so</filename> et lie les utilitaires bzip2 avec.</para>
<filename>libbz2.so</filename> et la lie aux utilitaires bzip2.</para>
 
<para>Continuez la compilation du package:</para>
<para>Continuez à compiler le package:</para>
 
<para><screen><userinput>make</userinput></screen></para>
 
/branches/LFS-4_1/lfs/chapter06/automake.xml
2,7 → 2,7
<title>Installation de Automake-&automake-version;</title>
<?dbhtml filename="automake.html" dir="chapter06"?>
 
<screen>Estimation du temps de construction : &automake-time;
<screen>Estimation du temps de compilation : &automake-time;
Estimation de l'espace disque requis : &automake-compsize;</screen>
 
&aa-automake-shortdesc;
/branches/LFS-4_1/lfs/chapter06/bash.xml
2,7 → 2,7
<title>Installation de Bash-&bash-version;</title>
<?dbhtml filename="bash.html" dir="chapter06"?>
 
<screen>Estimation du temps de construction : &bash-time;
<screen>Estimation du temps de compilation : &bash-time;
Estimation de l'espace disque requis : &bash-compsize;</screen>
 
&aa-bash-shortdesc;
/branches/LFS-4_1/lfs/chapter06/procps-inst.xml
19,7 → 19,7
<para><screen><userinput>make XSCPT="" install</userinput></screen></para>
 
<para>L'option <emphasis>XSCPT</emphasis> donnera une valeur vide à la variable
XSCPT du Makefile, de façon à ce que l'installation de XConsole est désactivée.
XSCPT du Makefile, de façon à ce que l'installation de XConsole soit désactivée.
Autrement, <userinput>make install</userinput> essaiera de copier le fichier
XConsole vers /usr/X11R6/lib/X11/app-defaults. Ce répertoire n'existe pas parce
que X n'est pas installé.</para>
/branches/LFS-4_1/lfs/chapter06/nettools-inst.xml
6,7 → 6,7
<para>Si vous ne savez pas quoi répondre à toutes les questions posées
lors de la phase du <userinput>make</userinput>, alors acceptez les réponses
par défaut, ce qui sera bien dans la majoité des cas. Il va vous être posé
toute une série de question sur le type de protocoles réseaux que vous
toute une série de questions sur le type de protocoles réseaux que vous
souhaitez activer dans votre noyau.</para>
 
<para>Les réponses par défaut vont activer tous les outils du package qui
/branches/LFS-4_1/lfs/chapter06/bin86.xml
2,7 → 2,7
<title>Installation de Bin86-&bin86-version;</title>
<?dbhtml filename="bin86.html" dir="chapter06"?>
 
<screen>Estimation du temps de construction : &bin86-time;
<screen>Estimation du temps de compilation : &bin86-time;
Estimation de l'espace disque requis : &bin86-compsize;</screen>
 
&aa-bin86-shortdesc;
/branches/LFS-4_1/lfs/chapter06/makedev-inst.xml
5,8 → 5,8
 
<para>Notez s'il-vous-plait que le déballage du fichier
MAKEDEV-&makedev-version;.bz2 ne va pas créer un répertoire dans lequel vous
pourriez entrer (<userinput>cd</userinput>), comme le fichier contient un script
shell.</para>
pourriez entrer (<userinput>cd</userinput>), puisque l'archive ne contient
qu'un script shell.</para>
 
<para>Installez le script MAKEDEV:</para>
 
/branches/LFS-4_1/lfs/chapter06/make-inst.xml
15,8 → 15,8
 
<para><screen><userinput>make install</userinput></screen></para>
 
<para>Par défaut, <filename>/usr/bin/make</filename> dispose de la permission
setgid avec le groupe kmem. Ceci est nécessaire sur certains systèmes pour qu'il
<para>Par défaut, <filename>/usr/bin/make</filename> dispose du droit setgid
setgid pour le groupe kmem. Ceci est nécessaire sur certains systèmes pour qu'il
puisse vérifier la charge moyenne en utilisant <filename>/dev/kmem</filename>.
Néanmoins, sur des systèmes Linux, setgid kmem n'est pas nécessaire, donc nous
supprimons ceci de notre binaire <filename>make</filename>. Ceci corrige aussi
/branches/LFS-4_1/lfs/chapter06/kernel-inst.xml
3,8 → 3,8
 
<para>Nous ne compilerons pas encore un nouveau noyau -- nous le ferons quand
nous aurons fini l'installation de tous les packages. Mais comme certains
packages ont besoin des fichiers d'entête du noyau, nous allons déballer
l'archive du noyau maintenant, le configurer et copier les fichiers d'entête
packages ont besoin des fichiers d'entêtes du noyau, nous allons déballer
l'archive du noyau maintenant, le configurer et copier les fichiers d'entêtes
où ils pourront être trouvés par ces packages.</para>
 
<para>Il est important de noter que les fichiers du répertoire source du noyau
14,15 → 14,16
identifiant utilisateur et groupe de l'utilisateur ayant créé l'archive. Ceci
n'est habituellement pas un problème pour tout package que vous installez parce
que vous supprimez les sources à la fin de l'installation. Mais les sources du
noyau Linux sont souvent conservés longtemps, donc il existe une chance pour,
quelque soit l'uid utilisé, celui-ci sera assigné à quelqu'un sur la machine,
et cette personne disposera des droits d'écriture sur les sources du noyau.
noyau Linux sont souvent conservées longtemps, donc il existe un risque pour
que, quelque soit l'uid utilisé, celui-ci soit un jour assigné à quelqu'un sur
la machine, et cette personne disposera des droits d'écriture sur les sources
du noyau.
</para>
 
<para>A la lumière de ceci, vous pouvez lancer
<userinput>chown -R 0:0</userinput> sur le répertoire
<filename>linux-&kernel-version;</filename> pour s'assurer que tous les fichiers
appartiennent à l'utilisateur <emphasis>root</emphasis>.</para>
<filename>linux-&kernel-version;</filename> pour vous assurer que tous les
fichiers appartiennent à l'utilisateur <emphasis>root</emphasis>.</para>
 
<para>L'installation des entêtes du noyau requiert le programme
<filename>pwd</filename>. Dans les sources du noyau, le chemin vers le programme
49,17 → 50,17
 
<para><screen><userinput>make symlinks</userinput></screen></para>
 
<para>Installez les fichiers d'entête spécifique à la plateforme:</para>
<para>Installez les fichiers d'entêtes spécifiques à la plateforme:</para>
 
<para><screen><userinput>cp -HR include/asm /usr/include &amp;&amp;
cp -R include/asm-generic /usr/include</userinput></screen></para>
 
<para>Installez les fichiers d'entête du noyau non spécifiques à la
<para>Installez les fichiers d'entêtes du noyau non spécifiques à la
plateforme:</para>
 
<para><screen><userinput>cp -R include/linux /usr/include</userinput></screen></para>
 
<para>Certains fichiers d'entête du noyau font usage du fichier d'entête
<para>Certains fichiers d'entêtes du noyau font usage du fichier d'entêtes
<filename>autoconf.h</filename>. Comme nous n'avons pas encore configuré le
noyau, nous avons besoin de créer ce fichier nous-même pour éviter des erreurs
de compilation. Créez un fichier autoconf.h vide:</para>
/branches/LFS-4_1/lfs/chapter06/sysvinit-inst.xml
7,7 → 7,7
disant : "sending all processes the TERM signal" et la même chose pour
le signal KILL. Cela implique que init envoie ce signal à tous les processus
en cours d'exécution, ce qui n'est pas le cas. Pour éviter cette confusion,
vous devez changer le fichier init.c afin que la phrase devienne "sending all
vous pouvez changer le fichier init.c afin que la phrase devienne "sending all
processes started by init the TERM signal".</para>
 
<para>Editez le message halt:</para>
/branches/LFS-4_1/lfs/chapter06/gcc-inst.xml
9,7 → 9,7
qui annulent les optimisations par défaut, nous vous recommandons de les
supprimer ou de les modifier pour la construction de GCC.</para>
 
<para>Nous construirons maintenant les compilateurs C et C++, donc vous aurez le
<para>Nous construirons maintenant les compilateurs C et C++, donc vous aurez
besoin de déballer les archives tar gcc-core et gcc-g++. D'autres compilateurs
sont disponibles dans le package gcc complet; les instructions pour les
construire sont disponibles sur <ulink
28,7 → 28,7
&nbsp;&nbsp;&nbsp;&nbsp;--enable-threads=posix --with-slibdir=/lib \
&nbsp;&nbsp;&nbsp;&nbsp;--enable-__cxa_atexit --enable-clocale=gnu</userinput></screen></para>
 
<para>La signification des options de configure sont:</para>
<para>Les significations des options de configure sont:</para>
 
<itemizedlist>
<listitem><para><userinput>--enable-threads=posix</userinput> : Ceci active la
35,7 → 35,7
gestion des exceptions C++ pour le code multi-threadé.</para></listitem>
 
<listitem><para><userinput>--enable-__cxa_atexit</userinput> : Cette option
résultera en des bibliothèques partagées et des programmes C++, interopérables
génèrera des bibliothèques partagées et des programmes C++, interopérables
avec d'autres distributions Linux.</para></listitem>
 
<listitem><para><userinput>--enable-clocale=gnu</userinput> : Certaines
42,9 → 42,10
personnes risquent de construire des bibliothèques C++ incompatibles avec ABI si
elles n'installent pas toute la glibc localedata. Utiliser --enable-clocale=gnu
vous assure que la "bonne chose" est faite dans tous les cas. Si vous ne
souhaitez pas utiliser cette option, alors construisez au moins la locale
<emphasis>de_DE</emphasis>. Lorsque GCC trouve cette locale spécifique, alors le
mode locale correct (<emphasis>gnu</emphasis>) est implémenté.</para></listitem>
souhaitez pas utiliser cette option, alors construisez au moins la
<quote>locale</quote> <emphasis>de_DE</emphasis>. Lorsque GCC trouve cette
<quote>locale</quote> spécifique, alors le mode <quote>locale</quote> correct
(<emphasis>gnu</emphasis>) est implémenté.</para></listitem>
</itemizedlist>
 
<para>Continuez avec la compilation du package:</para>
51,10 → 52,10
 
<para><screen><userinput>make bootstrap</userinput></screen></para>
 
<para>La cible <emphasis>bootstrap</emphasis> ne fait pas que compiler GCC, mais
il le compile plusieurs fois. Il utilise les premiers programmes compilés pour
se compiler une deuxième et une troisième fois pour s'assurer que le compilateur
a été compilé proprement.</para>
<para>La cible <emphasis>bootstrap</emphasis> ordonne de ne pas compiler une
La seconde compilation sera effectuée avec le compilateur généré lors de la
première et une troisième compilation aura lieu avec le second. Ainsi on
s'assurera que le compilateur aura été généré proprement.</para>
 
<para>Finissez l'installation du package:</para>
 
62,7 → 63,7
 
<para>Quelques packages s'attendent à ce que le préprocesseur C soit installé
dans les répertoires <filename>/lib</filename> et <filename>/usr/lib</filename>.
Pour honorer ces packages, créez deux liens symboliques:</para>
Pour assurer la compatibilité avec ces packages, créez deux liens symboliques:</para>
 
<para><screen><userinput>ln -s ../usr/bin/cpp /lib &amp;&amp;
ln -s ../bin/cpp /usr/lib</userinput></screen></para>
/branches/LFS-4_1/lfs/chapter06/autoconf.xml
2,7 → 2,7
<title>Installation de Autoconf-&autoconf-version;</title>
<?dbhtml filename="autoconf.html" dir="chapter06"?>
 
<screen>Estimation du temps de construction : &autoconf-time;
<screen>Estimation du temps de compilation : &autoconf-time;
Estimation de l'espace disque requis : &autoconf-compsize;</screen>
 
&aa-autoconf-shortdesc;
/branches/LFS-4_1/lfs/chapter06/revisedchroot.xml
5,7 → 5,7
<para>A partir de maintenant, lorsque vous sortez de l'environnement chroot et
que vous souhaitez y retourner, vous devez lancer la commande chroot suivante.
Celle du début de ce chapitre pourrait ne plus fonctionner (si votre
distribution était basée sur glibc-2.2.x ou plus ancien, les programmes dans
distribution est basée sur glibc-2.2.x ou plus ancienne, les programmes dans
<filename class="directory">/static/bin</filename>, tel que
<filename>bash</filename>, ne fonctionneront plus). La commande chroot suivante
fonctionnera quelque soit la version de la Glibc de votre distribution de base.
/branches/LFS-4_1/lfs/chapter06/bootscripts-inst.xml
3,15 → 3,15
<sect2>
<title>Installation de LFS-Bootscripts</title>
<para>Nous allons utiliser des scripts de démarrage de style SysV.
Nous avons choisi ce style car il est utilisé couramment et que nous les
<para>Nous allons utiliser des scripts de démarrage de type SysV.
Nous avons choisi ce type car il est utilisé couramment et que nous les
connaissons bien. Si vous préférez essayer autre chose, Marc Heerdink
a écrit une astuce LFS à propos des scripts de démarrage de style BSD, qui
a écrit une astuce LFS à propos des scripts de démarrage de type BSD, qui
peut être trouvée sur la page <ulink url="&hints-root;bsd-init.txt" />.</para>
<para>Si vous décidez d'utiliser le style BSD, ou tout autre style de
scripts, vous pourrez sauter le chapitre 7 lorsque vous y arriverez et
passer directement au chapitre 8.</para>
<para>Si vous décidez d'utiliser le type BSD, ou tout autre type de
scripts, vous pourrez sauter le chapitre 7 et passer directement
au chapitre 8.</para>
 
<para>Installez les scripts de démarrage:</para>
 
/branches/LFS-4_1/lfs/chapter06/man-inst.xml
16,7 → 16,7
 
<para><screen><userinput>patch -Np1 -i ../man-&man-pager-patch-version;-pager.patch</userinput></screen></para>
 
<para>Le dernier correctif concerne le problème des pages man mal formattés sur
<para>Le dernier correctif concerne le problème des pages man mal formattées sur
80 colonnes, si elles sont utilisées avec les dernières versions de
<userinput>groff</userinput>:</para>
 
27,7 → 27,7
plutôt que le premier endroit où le programme a été trouvé. En ajoutant
<emphasis>/usr/bin:/bin</emphasis> à PATH pour la commande
<userinput>./configure</userinput>, nous nous assurons que man n'utilise pas les
programmes dans le répertoire <filename class="directory">/static</filename>.
programmes du répertoire <filename class="directory">/static</filename>.
</para>
 
<para>Préparez la compilation de Man:</para>
/branches/LFS-4_1/lfs/chapter06/chroot.xml
1,12 → 1,11
<sect1 id="ch06-chroot">
<title>Entrée dans l'environnement "chrooté"</title>
<title>Entrée dans l'environnement chroot</title>
<?dbhtml filename="chroot.html" dir="chapter06"?>
 
<para>C'est le moment d'entrer dans l'environnement chroot afin d'installer
le reste des programmes nécessaires. Avant de lancer la commande chroot, vous
devez être <emphasis>root</emphasis> car seul l'utilisateur
<emphasis>root</emphasis> peut utiliser la commande
<userinput>chroot</userinput>.</para>
devez être <emphasis>root</emphasis> car seul cet utilisateur
peut utiliser cette commande.</para>
 
<para>Devenez <emphasis>root</emphasis> et lancez la commande suivante pour
entrer dans l'environnement chroot:</para>
21,24 → 20,24
<userinput>env</userinput> efface toutes les variables de l'environnement
chroot. Après cela, seules les variables HOME, TERM, PS1 et PATH sont
initialisées de nouveau. La commande TERM=$TERM initialise la variable
TERM à l'intérieur de chroot à la même valeur que celle à l'extérieur de chroot;
cette variable est utilisée par des programmes comme vim et less pour
fonctionner correctement. Si vous avez besoin d'autres variables, telles que
CFLAGS ou CXXFLAGS, initialisez-les de même.</para>
TERM à l'intérieur de chroot avec la même valeur que celle qu'elle avait à
l'extérieur; cette variable est utilisée par des programmes comme vim et less
pour fonctionner correctement. Si vous avez besoin d'autres variables, telles
que CFLAGS ou CXXFLAGS, vous pouvez aussi les initialiser ici.</para>
 
<para>Dès maintenant, nous n'avons plus besoin d'utiliser la variable LFS --
car le que le shell pense être <filename class="directory">/mnt/lfs</filename>
car ce que le shell pense être <filename class="directory">/</filename>
est la valeur de <filename class="directory">$LFS</filename>, qui a été passé à
la commande chroot.</para>
 
<para>Assurez-vous que les commandes suivantes dans le reste de ce chapitre et
<para>Assurez-vous que les commandes dans le reste de ce chapitre et dans
les suivants sont exécutées dans l'environnement chroot. Si vous quittez
l'environnement chroot (en redémarrant l'ordinateur par exemple), vous devez
vous rappeller de retourner dans l'environnement chroot et de monter $LFS/proc
de nouveau (comme indiqué plus tard) avant de continuer dans le livre.</para>
l'environnement chroot (en redémarrant l'ordinateur par exemple), Pensez
à retourner de nouveau dans l'environnement chroot et à monter une nouvelle
fois proc (comme indiqué plus tard) avant de continuer dans le livre.</para>
 
<para>Notez que l'invite de commande de bash contiendra "I have no name!"
<para>Notez que l'invite de bash contiendra "I have no name!"
(je n'ai pas de nom!) ce qui est normal puisque Glibc n'a pas encore été
installé.</para>
installée.</para>
 
</sect1>
/branches/LFS-4_1/lfs/chapter06/shadowpwd-inst.xml
5,7 → 5,7
 
<para>Avant d'installer ce package, vous pouvez jeter un oeil sur l'astuce LFS
pour Shadow. Il indique comment rendre votre système plus sécurisé en ce qui
concerne les mots de passe, comment activer les mots de passe MD5 plus sécurisé
concerne les mots de passe, comment activer les mots de passe MD5 plus sécurisés
et comment disposer du meilleur du package Shadow. L'astuce LFS Shadow est
disponible sur <ulink url="&hints-root;shadowpasswd_plus.txt"/>.</para>
 
57,7 → 57,7
 
<para><screen><userinput>mv /usr/lib/lib{shadow,misc}.so.0* /lib</userinput></screen></para>
 
<para>Les bibliothèques ont été déplacées, mais certains packages s'attendent de
<para>Les bibliothèques ont été déplacées, mais certains packages s'attendent à
les trouver dans le répertoire <filename class="directory">/usr/lib</filename>.
Pour en tenir compte, créez les liens symboliques suivants:</para>
 
65,9 → 65,9
ln -sf ../../lib/libmisc.so.0 /usr/lib/libmisc.so</userinput></screen></para>
 
<para>Sh-utils et la suite Shadow Password installent tous les deux un même
programme <filename>groups</filename>. Si vous souhaitez, vous pouvez supprimer
le programme <filename>groups</filename> installé par la suite Shadow Password:
</para>
programme <filename>groups</filename>. Si vous le souhaitez, vous pouvez
supprimer le programme <filename>groups</filename> installé par la suite Shadow
Password:</para>
 
<para><screen><userinput>rm /bin/groups</userinput></screen></para>
 
/branches/LFS-4_1/lfs/chapter06/gzip-inst.xml
30,7 → 30,7
 
<para><screen><userinput>make install</userinput></screen></para>
 
<para>Déplacez les binaires Gzip au répertoire <filename
<para>Déplacez les binaires Gzip dans le répertoire <filename
class="directory">/bin</filename>:</para>
 
<para><screen><userinput>mv /usr/bin/gzip /bin &amp;&amp;
/branches/LFS-4_1/lfs/chapter06/bzip2.xml
2,7 → 2,7
<title>Installation de Bzip2-&bzip2-version;</title>
<?dbhtml filename="bzip2.html" dir="chapter06"?>
 
<screen>Estimation du temps de construction : &bzip2-time;
<screen>Estimation du temps de compilation : &bzip2-time;
Estimation de l'espace disque requis : &bzip2-compsize;</screen>
 
&aa-bzip2-shortdesc;
/branches/LFS-4_1/lfs/chapter06/binutils.xml
2,7 → 2,7
<title>Installation de Binutils-&binutils-version;</title>
<?dbhtml filename="binutils.html" dir="chapter06"?>
 
<screen>Estimation du temps de construction : &binutils-time;
<screen>Estimation du temps de compilation : &binutils-time;
Estimation de l'espace disque requis : &binutils-compsize;</screen>
 
&aa-binutils-shortdesc;
/branches/LFS-4_1/lfs/chapter06/tar-inst.xml
8,7 → 8,7
<emphasis>-j</emphasis>, similaire à l'option <emphasis>-z</emphasis>
utilisée avec les fichiers gzip.</para>
<para>Appliquer le correctif en lançant la commande suivante:</para>
<para>Appliquez le correctif en lançant la commande suivante:</para>
 
<para><screen><userinput>patch -Np1 -i ../tar-&tar-patch-version;.patch</userinput></screen></para>
 
/branches/LFS-4_1/lfs/chapter06/groff-inst.xml
16,7 → 16,7
<para><screen><userinput>make install</userinput></screen></para>
 
<para>Quelques programmes de documentation groff/man, tels que
<userinput>xman</userinput>, ne fonctionneront pas probablement sans les liens
<userinput>xman</userinput>, ne fonctionneront probablement pas sans les liens
symboliques suivants:</para>
 
<para><screen><userinput>ln -s soelim /usr/bin/zsoelim &amp;&amp;
/branches/LFS-4_1/lfs/chapter06/ncurses-inst.xml
15,17 → 15,16
 
<para><screen><userinput>make install</userinput></screen></para>
 
<para>Donnez aux bibliothèques ncurses la permission d'exécution des
bibliothèques:</para>
<para>Donnez aux bibliothèques ncurses la permission d'exécution :</para>
 
<para><screen><userinput>chmod 755 /usr/lib/*.&ncurses-version;</userinput></screen></para>
 
<para>Déplacez les bibliothèques dans le répertoire <filename>/lib</filename>,
où on s'attend qu'elles soient:</para>
où on s'attend à ce qu'elles soient:</para>
 
<para><screen><userinput>mv /usr/lib/libncurses.so.5* /lib</userinput></screen></para>
 
<para>Comme les bibliothèques ont été déplacé dans
<para>Comme les bibliothèques ont été déplacées dans
<filename>/lib</filename>, quelques liens symboliques pointent
habituellement vers des fichiers inexistants. Recréez ces liens symboliques:
</para>
/branches/LFS-4_1/lfs/chapter06/bin86-inst.xml
2,21 → 2,20
<title>Installation de Bin86</title>
 
<para>Ce package est nécessaire seulement si vous décidez d'utiliser Lilo sur
votre système LFS. Si vous escomptez utiliser un autre outil tel que Grub, vous
votre système LFS. Si vous utilisez un autre outil tel que Grub, vous
n'aurez pas besoin de bin86. Vérifiez la documentation de votre chargeur
préféré pour voir si vous avez besoin du package bin86 (habituellement
seulement ld86 et/ou as86 de ce package sont requis).</para>
préféré pour voir si vous en avez besoin (habituellement
seul ld86 et/ou as86 sont necesssaires dans ce package).</para>
 
<para>Gardez à l'esprit qu'il n'y a pas seulement les chargeurs qui utilisent
le package bin86. Il y a toujours une chance qu'un autre package ait besoin de
programmes de ce package, donc garder tout ça à l'esprit si vous décidez de le
sauter.</para>
le package bin86. Il y a toujours des risque qu'un autre package ait besoin des
fichiers de bin86. Faites attention si vous décidez de ne pas l'installer.</para>
 
<para>Compilez le package:</para>
 
<para><screen><userinput>make</userinput></screen></para>
 
<para>Et finissez l'installation du package:</para>
<para>Et finissez en installant le package:</para>
 
<para><screen><userinput>make PREFIX=/usr install</userinput></screen></para>
 
/branches/LFS-4_1/lfs/chapter06/shellutils-inst.xml
24,7 → 24,7
 
<para><screen><userinput>make install</userinput></screen></para>
 
<para>Finalement, déplacez certains des programmes en plusieurs emplacements
<para>Finalement, déplacez certains programmes en des emplacements plus
appropriés:</para>
 
<para><screen><userinput>mv /usr/bin/{basename,date,echo,false,pwd} /bin &amp;&amp;
/branches/LFS-4_1/lfs/chapter06/psmisc-inst.xml
7,8 → 7,8
 
<para><screen><userinput>./configure --prefix=/usr --exec-prefix=/</userinput></screen></para>
 
<para>L'option <emphasis>--exec-prefix=/</emphasis> impliquera que les
programmes soient installés dans /bin au lieu de /usr/bin. Les programmes de ce
<para>L'option <emphasis>--exec-prefix=/</emphasis> forcera les
programmes a être installés dans /bin au lieu de /usr/bin. Les programmes de ce
package sont souvent utilisés dans bootscripts; ils devraient être dans le
répertoire /bin, donc ils peuvent être utilisés au cas où la partition
<filename class="directory">/usr</filename> ne serait pas montée.</para>
22,12 → 22,12
<para><screen><userinput>make install</userinput></screen></para>
 
<para>Le programme pidof de Psmisc n'est pas installé par défaut. Généralement,
ce n'est pas un problème car nous installons plus tard le package Sysvinit, qui
aporte un meilleur pidof.</para>
ce n'est pas un problème car nous installerons plus tard le package Sysvinit,
qui aporte un meilleur pidof.</para>
 
<para>C'est à vous de décider si vous allez utiliser le package Sysvinit,
apportant le programme pidof. Dans le cas contraire, vous devez terminer
l'installation en créer le lien symbolique vers <filename>/bin/pidof</filename>
l'installation et créer le lien symbolique vers <filename>/bin/pidof</filename>
en lançant:</para>
 
<para><screen><userinput>ln -s killall /bin/pidof</userinput></screen></para>
/branches/LFS-4_1/lfs/chapter06/bison.xml
2,7 → 2,7
<title>Installation de Bison-&bison-version;</title>
<?dbhtml filename="bison.html" dir="chapter06"?>
 
<screen>Estimation du temps de construction : &bison-time;
<screen>Estimation du temps de compilation : &bison-time;
Estimation de l'espace disque requis : &bison-compsize;</screen>
 
&aa-bison-shortdesc;
/branches/LFS-4_1/lfs/chapter06/bootscripts.xml
2,7 → 2,7
<title>Installation de LFS-Bootscripts-&bootscripts-version;</title>
<?dbhtml filename="bootscripts.html" dir="chapter06"?>
 
<screen>Estimation du temps de construction : &bootscripts-time;
<screen>Estimation du temps de compilation : &bootscripts-time;
Estimation de l'espace disque requis : &bootscripts-compsize;</screen>
 
&aa-bootscripts-shortdesc;