Installer Bash

Installation de Bash

Installez Bash en exécutant les commandes suivantes :


./configure --enable-static-link --prefix=$LFS/usr \
   --bindir=$LFS/bin --disable-nls --with-curses &&
make &&
make install &&
cd $LFS/bin &&
ln -s bash sh

Si vous rencontrez des erreurs en compilant bash qui vous disent ne pas trouver "-lcurses", exécutez les deux commandes suivantes pour créer le lien symbolique manquant (jusqu'à présent, nous n'avons jamais rencontré une distribution pour laquelle ce lien symbolique du paquetage libncurses est correct, excepté les systèmes LFS):


cd /usr/lib &&
ln -s libncurses.a libcurses.a

Note : Normalement, le fichier libncurses.a réside dans le répertoire /usr/lib, mais il peut aussi être dans /lib (comme dans un système LFS). Donc, vérifiez pour vous assurer si vous devez exécuter la commande ln dans /usr/lib ou dans /lib

Explication des commandes

--enable-static-link: Cette option de configuration entraîne l'édition de liens statique de Bash

--prefix=$LFS/usr: Cette option de configuration installe tous les fichiers de Bash sous le répertoire $LFS/usr, qui devient le répertoire /usr après un chroot dans $LFS ou quand vous redémarrez votre système sous LFS.

--bindir=$LFS/bin: Ceci installe les fichiers exécutables dans $LFS/bin. Nous faisons ceci car nous voulons que bash soit dans /bin, et non dans /usr/bin. Une des raisons est la suivante : votre partition (ndt: répertoire, en fait) /usr pourrait être une partition séparée qui doit être montée à un moment donné. Avant que cette partition ne soit montée, vous devez disposer de bash (il sera difficile d'exécuter les scripts de démarrage sans un shell, par exemple).

--disable-nls: Ceci interdit la construction de NLS (National Language Support, Support de la Langue Nationale). Ce serait actuellement uniquement une perte de temps car bash sera réinstallé au chapitre suivant.

--with-curses: Ceci a pour effet de lier Bash à la bibliothèque curses au lieu de la bibliothèque par défaut termcap, qui devient obsolète.

ln -s bash sh: Cette commande crée le lien symbolique sh qui pointe sur bash. La plupart des scripts s'exécutent via 'sh'; sh étant un lien symbolique vers le shell par défaut du système. Etant donné que les programmes et les scripts ne savent pas quel shell vous utilisez par défaut (cela pourrait être bash, ksh, korn, tch, csh ou d'autres) ils utilisent le lien symbolique commun sh qui, si le système est correctement configuré, pointe toujours vers le shell par défaut du système.

Les signes && à la fin de chaque ligne indiquent que la commande suivante ne doit être exécutée que si la commande précédente se termine avec une valeur de retour de 0, indiquant le succès. Si vous copiez&collez toutes ces commandes dans le shell, vous voulez vous assurez que, si ./configure échoue, make ne sera pas exécuté, que si make échoue, make install ne sera pas exécuté et ainsi de suite.

Contenu

Le paquet Bash contient le programme bash.

Description

bash est le SHell Bourne-Again, qui est un interpréteur de commandes couramment utilisé sur les systèmes Unix. bash est un programme qui lit l'entrée standard, c'est-à-dire le clavier. Vous tapez quelque chose et le programme évalue ce que vous avez entré, et en fait quelque chose, comme lancer un programme.