User Tools

Site Tools


lfs:pkg:glibc-2.31

glibc-2.31

Taille du paquet 59M
Somme de contrôle SHA256 2438817ec6aaaf65eb84500137fc498ea60fb93c3c38c51feac9833965691213
Estimation du temps de construction 1378.183 secondes

Parfois des erreurs se produisent lorsqu'on compile à la suite d'une passe précédente, il est recommandé de créer un nouveau dossier et de supprimer la précédente glibc compilé mais aussi de remplacer intégralement le contenu du dossier /usr/include par# le contenu du dossier issu de l'extraction des en-têtes du noyau.

TIMEFORMAT='(BUSYBOX) Compilation de glibc-2.31 en %R seconds ...'
time {
wget http://ftp.gnu.org/gnu/glibc/glibc-2.31.tar.xz -O ${LFS}/download/glibc-2.31.tar.xz  --no-check-certificate &&
md5sum -c <<<" 78a720f17412f3c3282be5a6f3363ec6 ${LFS}/download/glibc-2.31.tar.xz" &&
wget http://www.linuxfromscratch.org/patches/lfs/development/glibc-2.31-fhs-1.patch -O ${LFS}/download/glibc-2.31-fhs-1.patch  --no-check-certificate &&
md5sum -c <<<" 9a5997c3452909b1769918c759eff8a2 ${LFS}/download/glibc-2.31-fhs-1.patch" &&
cd ${LFS}/src/linux-5.4.8 &&
make INSTALL_HDR_PATH=dest headers_install &&
find dest/include \( -name .install -o -name ..install.cmd \) -delete &&
mv /usr/include /usr/include-sav &&
cp -rv dest/include /usr/include &&
rm -Rf ${LFS}/src/glibc-2.31 &&
tar xf ${LFS}/download/glibc-2.31.tar.xz -C ${LFS}/src &&
cd ${LFS}/src/glibc-2.31 &&
patch -Np1 -i ${LFS}/download/glibc-2.31-fhs-1.patch &&
sed -i '/asm.socket.h/a# include <linux/sockios.h>'    sysdeps/unix/sysv/linux/bits/socket.h &&
mkdir -v build &&
cd build &&
CC="gcc -ffile-prefix-map=/tools=/usr"              ../configure --prefix=/usr                                       --disable-werror                                    --enable-kernel=3.2                                 --enable-stack-protector=strong                     --with-headers=/usr/include                         libc_cv_slibdir=/lib &&
make &&
sed '/test-installation/s@$(PERL)@echo not running@' -i ../Makefile &&
mkdir -pv _pkg/{etc/,var/cache/nscd,usr/share/zoneinfo}
echo "" > _pkg/etc/ld.so.conf &&
make DESTDIR=$PWD/_pkg install &&
strip -v _pkg/usr/bin/*
strip -v _pkg/usr/lib/*
strip -v _pkg/sbin/*
strip -v _pkg/lib/*
rm -Rv /usr/include &&
mv /usr/include-sav /usr/include &&
cp -v ../nscd/nscd.conf _pkg/etc/nscd.conf &&
install -v -Dm644 ../nscd/nscd.tmpfiles _pkg/usr/lib/tmpfiles.d/nscd.conf &&
install -v -Dm644 ../nscd/nscd.service _pkg/lib/systemd/system/nscd.service &&
mkdir -pv _pkg/var/cache/nscd &&
install -v -Dm644 ../nscd/nscd.tmpfiles _pkg/usr/lib/tmpfiles.d/nscd.conf &&
install -v -Dm644 ../nscd/nscd.service _pkg/lib/systemd/system/nscd.service &&
mkdir -pv _pkg/usr/lib/locale &&
localedef -i POSIX -f UTF-8 C.UTF-8 2 > /dev/null _pkg/usr/lib/locale || true &&
localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro _pkg/usr/lib/locale &&
localedef -i fr_FR -f UTF-8 fr_FR.UTF-8 _pkg/usr/lib/locale &&
mkdir -pv ${LFS}/src/tzdata2019b &&
tar -xf ${LFS}/download/tzdata2019b.tar.gz -C ${LFS}/src/tzdata2019b &&
ln -sfv /usr/share/zoneinfo/Europe/Paris _pkg/etc/localtime &&
ZONEINFO=$PWD/_pkg/usr/share/zoneinfo &&
cd ${LFS}/src/tzdata2019b &&
mkdir -pv $ZONEINFO/{posix,right} &&
for tz in etcetera southamerica northamerica europe africa antarctica            asia australasia backward pacificnew systemv; do
    zic -L /dev/null   -d $ZONEINFO       ${tz}
    zic -L /dev/null   -d $ZONEINFO/posix ${tz}
    zic -L leapseconds -d $ZONEINFO/right ${tz}
done &&
cp -v zone.tab zone1970.tab iso3166.tab $ZONEINFO &&
zic -d $ZONEINFO -p Europe/Paris &&
unset ZONEINFO &&
cd ${LFS}/src/glibc-2.31/build &&
cat > _pkg/etc/nsswitch.conf << "EOF"
# Begin /etc/nsswitch.conf

passwd: files
group: files
shadow: files

hosts: files dns
networks: files

protocols: files
services: files
ethers: files
rpc: files

# End /etc/nsswitch.conf
EOF

cat > _pkg/etc/ld.so.conf << "EOF"
# Début de /etc/ld.so.conf
/usr/local/lib
/opt/lib

EOF

tar -C _pkg/ -cvf ${LFS}/pkg/glibc-2.31.tar.gz ./ &&
cd "${LFS}/"
}
lfs/pkg/glibc-2.31.txt · Last modified: 2025/02/19 10:59 by 127.0.0.1