Adaptation franأ§aiseآ : Nicolas Jadot
Prأ©paration de la publication de la v.f.آ : Jean-Philippe Guأ©rard
Versionآ :1.01.fr.1.0
25 janvier 2005
Historique des versions | ||
---|---|---|
Version 1.01.fr.1.0 | 2005-01-25 | NJ |
Premiأ¨re traduction franأ§aise | ||
Version 1.01 | 2004-03-19 | KC |
Premiأ¨re أ©dition, revue par le projet de documentation Linux (Initial Release, reviewed by LDP) |
Table des matiأ¨res
Copyright (c) 2004 by Kai Schlachter
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is located at http://www.gnu.org/licenses/fdl.html.
La version franأ§aise de ce document a أ©tأ© rأ©alisأ©e par Nicolas Jadot (Relecteur, ajoute ton nom ;-)). La version franأ§aise de ce guide pratique est publiأ©e en accord avec les termes de la licence de documentation libre GNU (GFDL)آ ; sans section invariante, sans texte de premiأ¨re de couverture ni texte de quatriأ¨me de couverture. Une copie de la licence est disponible sur http://www.gnu.org/copyleft/fdl.html.
J'expliquerai dans ce guide pratique comment installer une nouvelle version de la bibliothأ¨que glibcâ„¢ sur votre systأ¨me.
J'ai أ©cris ce manuel afin de protأ©ger les autres utilisateurs des problأ¨mes que j'ai rencontrأ©s.
Ce document est une sorte de ligne de vie, faite des paramأ©trages et des mأ©thodes qui ont fonctionnأ© dans mon cas. L'auteur dأ©cline toute responsabilitأ© quant au contenu de ce document. Utilisez les concepts, exemples et autres أ vos risques et pأ©rils. Je vous recommande cependant vivement de sauvegarder l'intأ©gralitأ© de votre systأ¨me avant toute installation majeure et de faire des sauvegardes rأ©guliأ¨res.
Si vous avez la moindre suggestion, ou si vous trouvez une autre
erreur dans une distribution, avec le moyen de la fixer,
faites le moi savoir, en m'أ©crivant أ آ :
<linux CHEZ murphyslantech POINT de>
.
L'installation de glibc n'est pas une tأ¢che facile. Il vous faudra effectuer un certain nombre d'opأ©rations prأ©alables, spأ©cialement pour le cas oأ¹ quelque chose tournerait mal. C'est ce qui m'est arrivأ© lors de ma premiأ¨re installation de glibc, et je n'avais fait aucun de ces prأ©paratifs.
Chargez la toute derniأ¨re version depuis ftp.gnu.org/gnu/binutilsآ ; أ la date de rأ©daction de ce guide, le numأ©ro de la version la plus rأ©cente أ©tait 2.14.
Ouvrez le paquetageآ :
tar xIvf binutils-2.14.tar.bz2
.
Changez de rأ©pertoireآ :
cd binutils-2.14
.
Configurez les makefilesآ :
./configure
.
Compilezآ :
make
.
Installez avecآ :
make install
.
Si quelque chose se dأ©roule mal durant la compilation de binutils, en rapport avec gettext (indiquأ© par des erreurs commeآ : آ«آ rأ©fأ©rence أ lib_intl non dأ©clarأ©eآ آ» ou quelque chose d'approchant) installez la nouvelle version, disponible أ ftp.gnu.org/gnu/gettext.
Si cela ne suffit pas, essayez de dأ©sactiver le support du langage natif en utilisantآ :
./configure --no-nls
.
Il n'est pas nأ©cessaire de compiler une version statique de binutils, bien que cela ne cause aucun problأ¨me, mais j'ai rencontrأ© de nombreux systأ¨mes fonctionnant avec de trأ¨s vieilles versions et eu des erreurs presque أ chaque fois aussi je pense qu'il est utile de le mentionner ici.
Tأ©lأ©chargez les sources depuisآ : ftp.gnu.org/gnu/make/آ ; أ la date de rأ©daction, la version est 3.80.
Dأ©ballez les sourcesآ :
tar xIvf make-3.80.tar.bz2
.
Changez de rأ©pertoireآ :
cd make-3.80
.
Prenez garde أ compiler de maniأ¨re statiqueآ :
export CFLAGS="-static -O2 -g"
.
Lancez le script de configurationآ :
./configure
Compilezآ :
make
.
Installez les binaires:
make install
.
Vأ©rifiezآ :
make -v
Vous devez maintenant voir la derniأ¨re version installأ©e. Sinon, recherchez les anciens fichiers binaires et remplacez les par des liens symboliques vers les nouvelles versions.
Fأ©licitationsآ ! Vous avez compilأ© un autre programme statique.
De nouveau, tأ©lأ©chargez les sources depuis ftp.gnu.org/gnu/coreutils/آ ; au moment de la rأ©daction, la version courante est la 5.0.
Dأ©paquetez les sourcesآ :
tar xIvf coreutils-5.0.tar.bz2
Changez de rأ©pertoireآ :
cd coreutils-5.0
Prenez garde au fait que les binaires doivent أھtre liأ©s statiquement :
export CFLAGS="-static -O2 -g"
Configurez le paquetageآ :
./configure
Compilez les binairesآ :
make
Et installez lesآ :
make install
Vأ©rifiez que la bonne version de core-utils est utilisأ©eآ :
cp --version
. Vous devez obtenir un numأ©ro de version correct, dans le cas contraire, supprimez les anciens binaires et remplacez les par des liens symboliques vers les nouveaux.
Maintenant que les binaires de ces outils de base sont des versions statiques, vous أھtes sأ»r qu'il fonctionneront en cas de besoin.
Rأ©cupأ©rez les sources de GNU tar sur ftp.gnu.org/gnu/tarآ ; أ la date de rأ©daction, la derniأ¨re version est la 1.13.
Comme de multiples archives tar sont compressأ©es avec bzip2, nous prأ©fأ©rerons disposer du support intأ©grأ©, plutأ´t que de devoir travailler avec des pipesآ ; il nous faut donc rأ©cupأ©rer le patch أ ftp://infogroep.be/pub/linux/lfs/lfs-packages/4.1/tar-1.13.patch.
Dأ©paquetez les sourcesآ :
tar xzvf tar-1.13.tar.gz
Copiez le patch dans le rأ©pertoire contenant les sources de tar
cp tar-1.13.patch tar-1.13/
Appliquez leآ :
patch -Np1 -i tar-1.13.patch
Posez les options du compilateur pour obtenir un binaire statiqueآ :
export CFLAGS="-static -O2 -g"
Nous sommes maintenant prأھt pour la configurationآ :
./configure
La compilationآ :
make
Et enfin l'installationآ :
make install
Faites une derniأ¨re vأ©rification pour vous assurer que la nouvelle version sera utilisأ©e أ partir de maintenantآ :
tar --version
. La version que vous venez d'installer doit apparaأ®tre, sinon, remplacez les anciens binaires par des liens symboliques vers les nouveaux.
Si vous avez des problأ¨mes dans l'exأ©cution de la commande make, essayez de dأ©sactiver le support du langage natif (nlsآ : native-language support). Pour ce faire, utilisez la commande configure avec l'option
--disable-nls
Noteآ : dans la nouvelle version de tar,
vous devez utiliser l'option -j
pour dأ©compresser les
fichiers .bzip2, aussi plutأ´t que
tar xIvf anyfile.tar.bz2
vous devez maintenant utiliser
tar xjvf anyfile.tar.bz2
. J'ignore les raisons de ce changement, mais أ§a fonctionne bien.
Rأ©cupأ©rez bash أ آ : ftp.gnu.org/gnu/bash/. Tأ©lأ©chargez la version la plus rأ©cente que vous trouverezآ ; أ la date de rأ©daction, celle-ci est la 2.05b.
Dأ©paquetez les sourcesآ :
tar xzvf bash-2.05b.tar.gz
crأ©era un rأ©pertoire nommأ©
bash-2.05b
contenant toutes les
sources.
Dأ©placez-vous dans ce rأ©pertoireآ :
cd bash-2.05a
Configurez pour obtenir une version statiqueآ :
export CFLAGS="-static -O2 -g"
Configurez le makefileآ :
./configure
. Si vous dأ©sirez que votre bash possأ¨de certaine fonctionnalitأ©s spأ©ciales, reportez-vous أ la commande
./configure --help
pour la liste des options.
Compilez le toutآ :
make
Installez les binairesآ :
make install
. Ils seront installأ©s dans le rأ©pertoire
/usr/local/bin/
.
Vأ©rifiez qu'une autre version ne reste pas tapie
quelque part (comme dans ma Suseآ : /bin/
), en
copiant le fichierآ :
cp /usr/local/bin/bash /bin/
. Nous n'utilisons pas ici de lien symbolique car, tant lors du dأ©marrage de la machine qu'au lancement de bash, des problأ¨mes peuvent survenir avec les liens symboliques.
Vous avez maintenant installأ© une version statique de bash. C'est pour cette raison que le binaire est beaucoup plus volumineux qu'أ l'accoutumأ©e, mais il fonctionnera quelles que soient les circonstances.
Si vous prأ©fأ©rez utiliser un autre shell, vous أھtes libre de le faire, mais assurez-vous qu'il s'agit d'une version liأ©e statiquement. N'hأ©sitez pas أ me communiquer la mأ©thode pour construire une version statique du shell de votre choixآ ; il y a de grandes chances qu'elle soit reprise dans la prochaine rأ©vision de ce document.
Pour compiler ce logiciel, glib doit أھtre installأ©آ ; cela est le cas dans certaines distributions. Si vous rencontrez une erreur lors de l'exأ©cution de la commande make vous indiquant que ld ne peut pas trouver glib, vous devrez installer cette bibliothأ¨que avant tout autre chose. Vous pouvez en trouver les sources أ آ : ftp.gnome.org/pub/gnome/sources/glib/2.2/, et l'installation est directe .
Les أ©tapes de la construction de Midnight Commander sontآ :
Rأ©cupأ©rer les sources depuis http://www.ibiblio.org/pub/Linux/utils/file/managers/mc/آ ; أ la date de rأ©daction, la version la plus rأ©cente est la 4.6.0.
Dأ©paqueter les sourcesآ :
tar xzvf mc-4.6.0.tar.gz
Se dأ©placer dans le rأ©pertoire nouvellement crأ©أ©آ :
cd mc-4.6.0
Configurerآ :
./configure
Compilerآ :
make
Tout installerآ :
make install
Maintenant nous atteignons le point crucialآ : l'installation de glibc.
Bien, maintenant, au travailآ :
Rأ©cupأ©rez les sources sur ftp.gnu.org/gnu/glibc/آ ; comme dit plus haut, j'ai utilisأ© la version 2.2.4.
Dأ©paquetez les sourcesآ :
tar -xzvf glibc-2.2.4.tar.gz
Vous aurez besoin, en plus, du paquetage
آ«آ linuxthreadsآ آ» que l'on peut trouver dans le rأ©pertoire
linuxthreads
sur ftp.gnu.org. Le fichier estآ :
glibc-linuxthreads-2.2.4.tar.gz
. Assurez-vous que le numأ©ro de version correspond أ celui de votre arborescence des sources de glibc.
Copiez le paquetage linuxthreads dans le rأ©pertoire contenant les sources de glibcآ :
cp glibc-linuxthreads-2.2.4.tar.gz glibc-2.2.4
Dأ©placez vous dans ce rأ©pertoireآ :
cd glibc-2.2.4
Dأ©paquetez linuxthreadsآ :
tar xzvf linux-threads-2.2.4.tar.gz
Configurez le paquetageآ :
./configure --enable-add-ons=linuxthreads
. Cela configurera le paquetage de telle sorte que linuxthreads soit inclus dans la compilationآ ; ceci est nأ©cessaire pour la compatibilitأ© avec d'autres systأ¨mes Linux. Par exemple, les programmes que vous compilerez sur votre machine ne fonctionneront probablement pas sur d'autres machines si vous omettez d'inclure ce paquetage.
Enfin, lancez la compilation de glibcآ :
make
. Cela peut prendre un certain temps (أ peu prأ¨s une demi-heure sur le Duron XP 1,5آ GHz de l'auteur).
Maintenant que la bibliothأ¨que est compilأ©e, tout est prأھt pour l'installation, mais les choses ne seront pas si simple cette fois.
Grub est un gestionnaire d'amorأ§age plus rأ©cent, avec un support أ©tendu de diffأ©rents systأ¨mes d'exploitation et systأ¨mes de fichiers (par exemple, il supporte le dأ©marrage depuis des partitions reiserfs). Si vous dأ©sirez en savoir plus, reportez vous أ http://www.gnu.org/software/grub/, oأ¹ vous trouverez tout le nأ©cessaire.
Si grub est dأ©jأ installأ© chez vous, vous utilisez probablement l'interface en mode texte pour sأ©lectionner le noyau que vous voulez lancer. Grub dispose d'une intأ©ressante fonctionnalitأ© — au lieu de tout refaire أ la main, vous pouvez simplement sأ©lectionner l'entrأ©e qui vous intأ©resse et, alors, taper e, ce qui provoquera l'affichage d'un menu optionnel. Dans ce menu, vous verrez la commande exأ©cutأ©e par grub avant le lancement du noyau. Sأ©lectionnez la ligne indiquant
kernel="/oأ¹/est-le-noyau-et-quelles-sont-les-options"
et tapez e de nouveau. Maintenant, vous pouvez أ©diter cette ligne. Vous ajoutez simplement
init=/bin/bash
et tapez Entrأ©e pour rendre les modifications effectives, tapez b pour dأ©marrer.
… Vous allez vous retrouver dans un environnement shell absolument minimal.
L'invite ressemblera sأ»rement أ
init-x.y#
mount -o remount,rw /
mount -t reiserfs /dev/md0 /usr/src
Maintenant, vous pouvez aller dans le rأ©pertoire contenant les sources et taperآ :
make install
Si vous le dأ©sirez, c'est maintenant le bon moment pour prier pour que tout se passe bien… ;-)
Si tout se passe parfaitement, vous retrouverez l'invite de commande aprأ¨s l'installation sans aucun message d'erreur. Dans tous les autres cas, reportez vous أ Chapitreآ 5, En cas de problأ¨me — si quelque chose a mal tournأ©â€¦ .
Si tout s'est bien passأ©, lancez
ldconfig -v
pour mettre أ jour le cache des bibliothأ¨ques.
Fأ©licitationsآ ! La bibliothأ¨que est installأ©e avec succأ¨s. Maintenant, tapezآ : mount -o remount,ro / pour أھtre sأ»r que toutes les donnأ©es sont أ©crites sur le disque dur.
Lancez la procأ©dure de redأ©marrageآ :
exit
. Cela provoquera un message d'erreur indiquant que vous avez causأ© un kernel-panic. Si possible, relancez l'ordinateur par CTRL+ALT+DEL, sinon utilisez le bouton reset.
Essayez de lancer votre noyau habituel. Si tout se passe bien, vous أھtes prأھt أ utiliser votre nouvelle bibliothأ¨que.
Si vous arrivez أ cette section en ayant suivi toutes les instructions fournies plus haut, vous avez probablement أ©tأ© confrontأ© au problأ¨me inhأ©rent أ la multiplicitأ© des distributions Linux, certaines ne placent pas les choses oأ¹ elles devraient أھtre mais ailleurs. Les distributions Suse sont les plus fameuses de celles-lأ , mais d'autres peuvent avoir ce problأ¨me. Si vous rencontrez ce problأ¨me et trouvez la cause de l'erreur — et j'espأ¨re la solution — soyez gentil de me le faire savoir, afin que je l'ajoute أ ce document.
Je pense que cette section ne sera jamais vraiment complأ¨te, mais je vais tenter de lister un certain nombre d'erreurs possibles et les solutions pour s'en sortir.