Des détails sur ce paquet se trouvent sur Section 10.60.2, « Contenu de Bash. »
Le paquet Bash contient le shell Bourne-Again.
Le correctif suivant contient les mises à jour du mainteneur. Le mainteneur de Bash ne fournit ces correctifs que pour corriger de sérieux problèmes :
patch -Np1 -i ../bash-4.4-branch_update-1.patch
Lorsque Bash est compilé de manière croisée, il ne peut pas tester
la présence des canaux nommés, entre autres choses. Si vous
utilisez su pour
devenir un utilisateur non privilégié, cette combinaison causera la
construction de Bash sans substitution
de processus, ce qui cassera l'un des scripts de test
C++ dans glibc
. Ce qui suit évite les
problèmes futurs en passant le test pour les canaux nommés, ainsi
que d'autres tests qui ne peuvent être lancé lors de la compilation
croisée ou qui ne sont pas lancés correctement :
cat > config.cache << "EOF" ac_cv_func_mmap_fixed_mapped=yes ac_cv_func_strcoll_works=yes ac_cv_func_working_mktime=yes bash_cv_func_sigsetjmp=present bash_cv_getcwd_malloc=yes bash_cv_job_control_missing=present bash_cv_printf_a_format=yes bash_cv_sys_named_pipes=present bash_cv_ulimit_maxfds=yes bash_cv_under_sys_siglist=yes bash_cv_unusable_rtsigs=no gt_cv_int_divbyzero_sigfpe=yes EOF
Préparez la compilation de Bash :
./configure \ --prefix=/tools \ --build=${CLFS_HOST} \ --host=${CLFS_TARGET} \ --without-bash-malloc \ --cache-file=config.cache
Voici la signification de la nouvelle option de configure :
--without-bash-malloc
Cette option désactive l'utilisation de la fonction d'allocation de mémoire (malloc) de Bash qui est connue pour causer des erreurs de segmentation. En désactivant cette option, Bash utilisera la fonction malloc de la Glibc qui est plus stable.
Compilez le paquet :
make
Installez le paquet :
make install
Des détails sur ce paquet se trouvent sur Section 10.60.2, « Contenu de Bash. »