OnWorks Linux เปเบฅเบฐ Windows Online WorkStations

Logo

เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบญเบญเบ™เป„เบฅเบ™เปŒเบŸเบฃเบตเบชเปเบฒเบฅเบฑเบš WorkStations

<Previous | เป€เบ™เบทเป‰เบญเปƒเบ™ | เบ•เปเปˆเป„เบ›>

6.9.1. เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ Glibc


เบซเบกเบฒเบโ€‹เป€เบซเบ”โ€‹

เบฅเบฐเบšเบปเบšเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡ Glibc เปเบกเปˆเบ™เป€เบฎเบฑเบ”เบ”เป‰เบงเบเบ•เบปเบงเป€เบญเบ‡เปเบฅเบฐเบˆเบฐเบ•เบดเบ”เบ•เบฑเป‰เบ‡เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเป„เบŸเบฅเปŒ specs compiler เปเบฅเบฐ linker เบเบฑเบ‡เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™. / เป€เบ„เบทเปˆเบญเบ‡โ€‹เบกเบทโ€‹. เบ‚เปเป‰เบกเบนเบ™เบˆเปเบฒเป€เบžเบฒเบฐเปเบฅเบฐเบ•เบปเบงเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบšเปเปˆเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ›เบฑเบšเป„เบ”เป‰เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ•เบดเบ”เบ•เบฑเป‰เบ‡ Glibc เป€เบžเบฒเบฐเบงเปˆเบฒเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš autoconf เบ‚เบญเบ‡ Glibc เบˆเบฐเปƒเบซเป‰เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เปเบฅเบฐเบ—เปเบฒเบฅเบฒเบเป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบ‚เบญเบ‡เบเบฒเบ™เบšเบฑเบ™เบฅเบธเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ—เบตเปˆเบชเบฐเบญเบฒเบ”.

เบซเบกเบฒเบโ€‹เป€เบซเบ”โ€‹

เบฅเบฐเบšเบปเบšเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡ Glibc เปเบกเปˆเบ™เป€เบฎเบฑเบ”เบ”เป‰เบงเบเบ•เบปเบงเป€เบญเบ‡เปเบฅเบฐเบˆเบฐเบ•เบดเบ”เบ•เบฑเป‰เบ‡เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเป„เบŸเบฅเปŒ specs compiler เปเบฅเบฐ linker เบเบฑเบ‡เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™. / เป€เบ„เบทเปˆเบญเบ‡โ€‹เบกเบทโ€‹. เบ‚เปเป‰เบกเบนเบ™เบˆเปเบฒเป€เบžเบฒเบฐเปเบฅเบฐเบ•เบปเบงเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบšเปเปˆเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ›เบฑเบšเป„เบ”เป‰เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบ•เบดเบ”เบ•เบฑเป‰เบ‡ Glibc เป€เบžเบฒเบฐเบงเปˆเบฒเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš autoconf เบ‚เบญเบ‡ Glibc เบˆเบฐเปƒเบซเป‰เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เปเบฅเบฐเบ—เปเบฒเบฅเบฒเบเป€เบ›เบปเป‰เบฒเบซเบกเบฒเบเบ‚เบญเบ‡เบเบฒเบ™เบšเบฑเบ™เบฅเบธเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ—เบตเปˆเบชเบฐเบญเบฒเบ”.

เบšเบฒเบ‡เป‚เบ„เบ‡เบเบฒเบ™ Glibc เปƒเบŠเป‰เบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™ FHS /var/db เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเป€เบžเบทเปˆเบญเป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™ runtime เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เบ™เบณเปƒเบŠเป‰เปเบžเบฑเบ”เบ•เปเปˆเป„เบ›เบ™เบตเป‰เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เปƒเบซเป‰เป‚เบ›เบฃเปเบเบกเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™ runtime เบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบขเบนเปˆเปƒเบ™เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ—เบตเปˆเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบก FHS:


patch -Np1 -i ../glibc-2.30-fhs-1.patch

patch -Np1 -i ../glibc-2.30-fhs-1.patch


เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเปเบ™เบฐเบ™เปเบฒเบเบฑเบš linux-5.2 kernel:


sed -i '/asm.socket.h/a# เบ›เบฐเบเบญเบšเบกเบต ' \ sysdeps/unix/sysv/linux/bits/socket.h

sed -i '/asm.socket.h/a# เบ›เบฐเบเบญเบšเบกเบต ' \ sysdeps/unix/sysv/linux/bits/socket.h


เบฎเบนเบšเบžเบฒเบšเป€เบฅเบฑเบเบ™เป‰เบญเบ

-sfv

-sfv

-sfv

-sfv

../lib/ld-linux-x86-64.so.2 /lib64

../lib/ld-linux-x86-64.so.2 /lib64/ld-lsb-x86-64.so.3

../lib/ld-linux-x86-64.so.2 /lib64

../lib/ld-linux-x86-64.so.2 /lib64/ld-lsb-x86-64.so.3

เบชเป‰เบฒเบ‡ symlink เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบก LSB. เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบชเปเบฒเบฅเบฑเบš x86_64, เบชเป‰เบฒเบ‡ symlink เบ„เบงเบฒเบกเป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเป‚เบซเบฅเบ”เปเบšเบšเป„เบ”เบ™เบฒเบกเบดเบเป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบงเบฝเบเบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡:


case $(unname -m) เปƒเบ™

case $(unname -m) เปƒเบ™


i?86) ln

;;

x86_64) ln

ln

;;

เบงเปˆเบฒ C

-sfv

ld-linux.so.2 /lib/ld-lsb.so.3

i?86) ln

;;

x86_64) ln

ln

;;

เบงเปˆเบฒ C

เป€เบญเบเบฐเบชเบฒเบ™ Glibc เปเบ™เบฐเบ™เปเบฒเปƒเบซเป‰เบชเป‰เบฒเบ‡ Glibc เปƒเบ™เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบชเป‰เบฒเบ‡เบชเบฐเป€เบžเบฒเบฐ:


mkdir -v build cd build

mkdir -v build cd build


เบฎเบนเบšเบžเบฒเบšเป€เบฅเบฑเบเบ™เป‰เบญเบ

เบเบฐเบเบฝเบก glibc เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบฅเบงเบšเบฅเบงเบก:


CC="gcc -ffile-prefix-map=/tools=/usr" \

../configure --prefix=/usr

--disable-wrror

--enable-kernel=3.2

--enable-stack-protector=strong

--with-headers=/usr/include libc_cv_slibdir=/lib

\

\

\

\

\

CC="gcc -ffile-prefix-map=/tools=/usr" \

../configure --prefix=/usr

--disable-wrror

--enable-kernel=3.2

--enable-stack-protector=strong

--with-headers=/usr/include libc_cv_slibdir=/lib


เบ„เบงเบฒเบกเปเบฒเบเบ‚เบญเบ‡เบ•เบปเบงเป€เบฅเบทเบญเบ เปเบฅเบฐเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบเบณเบ™เบปเบ”เบ„เปˆเบฒเปƒเปเปˆ:


CC="gcc -ffile-prefix-map=/tools=/usr"

เป€เบฎเบฑเบ”เปƒเบซเป‰ GCC เบšเบฑเบ™เบ—เบถเบเป€เบญเบเบฐเบชเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡เปƒเบ”เป†เปƒเบ™ /tools เปƒเบ™เบœเบปเบ™เบ‚เบญเบ‡เบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™เบ„เบทเบเบฑเบšเบงเปˆเบฒเป„เบŸเบฅเปŒเบ—เบตเปˆเบขเบนเปˆเปƒเบ™ /usr. เบ™เบตเป‰เบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เปเบ™เบฐเบ™เปเบฒเป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เปƒเบ™เบชเบฑเบ™เบเบฒเบฅเบฑเบเบเบฒเบ™เบ”เบตเบšเบฑเบ.

--disable-wrror

เบ•เบปเบงเป€เบฅเบทเบญเบเบ™เบตเป‰เบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™ -Wrror เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ—เบตเปˆเบชเบปเปˆเบ‡เบเบฑเบš GCC. เบ™เบตเป‰เปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ›เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบฅเปˆเบ™เบŠเบธเบ”เบ—เบปเบ”เบชเบญเบš.

--enable-stack-protector=strong

เบ•เบปเบงเป€เบฅเบทเบญเบเบ™เบตเป‰เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ›เบญเบ”เป„เบžเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเป‚เบ”เบเบเบฒเบ™เป€เบžเบตเปˆเบกเบฅเบฐเบซเบฑเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเป€เบžเบทเปˆเบญเบเบงเบ”เป€เบšเบดเปˆเบ‡เบเบฒเบ™เบฅเบปเป‰เบ™เบ‚เบญเบ‡ buffer, เป€เบŠเบฑเปˆเบ™: เบเบฒเบ™เป‚เบˆเบกเบ•เบต stack smashing.

--with-headers=/usr/include

เบ•เบปเบงเป€เบฅเบทเบญเบเบ™เบตเป‰เบšเบญเบเบฅเบฐเบšเบปเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เบšเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐเบŠเบญเบเบซเบฒ kernel API headers. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบชเปˆเบงเบ™เบซเบปเบงเป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™เปเบกเปˆเบ™เบŠเบญเบเบซเบฒเบขเบนเปˆเปƒเบ™

/tools/include.

libc_cv_slibdir=/lib

เบ•เบปเบงเปเบ›เบ™เบตเป‰เบเปเบฒเบ™เบปเบ”เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบชเปเบฒเบฅเบฑเบšเบ—เบธเบเบฅเบฐเบšเบปเบš. เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™ lib64 เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰.

เบชเบฑเบ‡เบฅเบงเบกเบŠเบธเบ”:


เป€เบฎเบฑเบ”เปƒเบซเป‰

เป€เบฎเบฑเบ”เปƒเบซเป‰


เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™

เปƒเบ™เบžเบฒเบเบ™เบตเป‰, เบŠเบธเบ”เบ—เบปเบ”เบชเบญเบšเบชเปเบฒเบฅเบฑเบš Glibc เปเบกเปˆเบ™เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™. เบขเปˆเบฒเบ‚เป‰เบฒเบกเบกเบฑเบ™เบžเบฒเบเปƒเบ•เป‰เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เปƒเบ”เบเปเปˆเบ•เบฒเบก.

เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™

เปƒเบ™เบžเบฒเบเบ™เบตเป‰, เบŠเบธเบ”เบ—เบปเบ”เบชเบญเบšเบชเปเบฒเบฅเบฑเบš Glibc เปเบกเปˆเบ™เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™. เบขเปˆเบฒเบ‚เป‰เบฒเบกเบกเบฑเบ™เบžเบฒเบเปƒเบ•เป‰เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เปƒเบ”เบเปเปˆเบ•เบฒเบก.


เบฎเบนเบšเบžเบฒเบšเป€เบฅเบฑเบเบ™เป‰เบญเบ

เบฎเบนเบšเบžเบฒเบšเป€เบฅเบฑเบเบ™เป‰เบญเบ

เบฎเบนเบšเบžเบฒเบšเป€เบฅเบฑเบเบ™เป‰เบญเบ

/lib ;;

/lib ;;

-sfnv $PWD/elf/ld-linux-x86-64.so.2 /lib ;;

-sfnv $PWD/elf/ld-linux-x86-64.so.2 /lib ;;

เป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เปเบฅเป‰เบงเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบšเปเปˆเบซเบผเบฒเบเบ›เบฒเบ™เปƒเบ”เบšเปเปˆเบœเปˆเบฒเบ™. เบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบผเบงเบ‚เบญเบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เปเบกเปˆเบ™เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบ›เบญเบ”เป„เบžเบ—เบตเปˆเบˆเบฐเบšเปเปˆเบชเบปเบ™เปƒเบˆ.


case $(uname i?86)ln x86_64)ln

เบงเปˆเบฒ C

-m) เปƒเบ™

-sfnv $PWD/elf/ld-linux.so.2

case $(uname i?86)ln x86_64)ln

เบงเปˆเบฒ C


เบซเบกเบฒเบโ€‹เป€เบซเบ”โ€‹

เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบชเบฑเบ™เบเบฒเบฅเบฑเบเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ™เบตเป‰เบ‚เบญเบ‡เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก chroot. เบกเบฑเบ™เบˆเบฐเบ–เบทเบเบ‚เบฝเบ™เบ—เบฑเบšเปƒเบ™เป„เบฅเบเบฐเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰.

เบซเบกเบฒเบโ€‹เป€เบซเบ”โ€‹

เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบชเบฑเบ™เบเบฒเบฅเบฑเบเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ™เบตเป‰เบ‚เบญเบ‡เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก chroot. เบกเบฑเบ™เบˆเบฐเบ–เบทเบเบ‚เบฝเบ™เบ—เบฑเบšเปƒเบ™เป„เบฅเบเบฐเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰.


เป€เบฎเบฑเบ”เบเบฒเบ™เบเบงเบ”เบชเบญเบš

เป€เบฎเบฑเบ”เบเบฒเบ™เบเบงเบ”เบชเบญเบš

เบ—เปˆเบฒเบ™เบญเบฒเบ”เบˆเบฐเป€เบซเบฑเบ™เบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบฅเบงเปƒเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบšเบฒเบ‡เบขเปˆเบฒเบ‡. เบŠเบธเบ”เบ—เบปเบ”เบชเบญเบš Glibc เปเบกเปˆเบ™เบ‚เบถเป‰เบ™เบเบฑเบšเบฅเบฐเบšเบปเบšเป€เบˆเบปเป‰เบฒเบžเบฒเบš. เบ™เบตเป‰เปเบกเปˆเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบšเบฑเบ™เบซเบฒเบ—เบปเปˆเบงเป„เบ›เบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเป€เบซเบฑเบ™เบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡เบฎเบธเปˆเบ™เบ‚เบญเบ‡ LFS:

โ€ข misc/tst-ttyname เป€เบ›เบฑเบ™เบ—เบตเปˆเบฎเบนเป‰เบˆเบฑเบเบ—เบตเปˆเบˆเบฐเบฅเบปเป‰เบกเป€เบซเบฅเบงเปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก LFS chroot.

โ€ข inet/tst-idna_name_classify เป€เบ›เบฑเบ™เบ—เบตเปˆเบฎเบนเป‰เบˆเบฑเบเบ—เบตเปˆเบˆเบฐเบฅเบปเป‰เบกเป€เบซเบฅเบงเปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก LFS chroot.

โ€ข posix/tst-getaddrinfo4 เปเบฅเบฐ posix/tst-getaddrinfo5 เบญเบฒเบ”เบˆเบฐเบฅเบปเป‰เบกเป€เบซเบฅเบงเปƒเบ™เบšเบฒเบ‡เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒ.

โ€ขเบเบฒเบ™ nss/tst-nss-files-hosts-multi เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบญเบฒเบ”เบˆเบฐเบฅเบปเป‰เบกเป€เบซเบฅเบงเบชเปเบฒเบฅเบฑเบšเป€เบซเบ”เบœเบปเบ™เบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบเปเบฒเบ™เบปเบ”.


โ€ขเบเบฒเบ™ rt/tst-cputimer{1,2,3} เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปเบกเปˆเบ™เบ‚เบถเป‰เบ™เบเบฑเบš kernel เบฅเบฐเบšเบปเบšเป€เบˆเบปเป‰เบฒเบžเบฒเบš. Kernels 4.14.91โ€“4.14.96, 4.19.13โ€“4.19.18, เปเบฅเบฐ 4.20.0โ€“4.20.5 เป€เบ›เบฑเบ™เบ—เบตเปˆเบฎเบนเป‰เบเบฑเบ™เบงเปˆเบฒเป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบฅเบปเป‰เบกเป€เบซเบฅเบง.

โ€ข เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ„เบฐเบ™เบดเบ”เบชเบฒเบ”เบฅเบปเป‰เบกเป€เบซเบฅเบงเป€เบกเบทเปˆเบญเปเบฅเปˆเบ™เบขเบนเปˆเปƒเบ™เบฅเบฐเบšเบปเบšเบ—เบตเปˆ CPU เบšเปเปˆเปเบกเปˆเบ™เป‚เบ›เป€เบŠเบ”เป€เบŠเบต Intel เบซเบผเบท AMD เปƒเปเปˆ.

เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบ‚เปเป‰เบ„เบงเบฒเบกเบ—เบตเปˆเบšเปเปˆเบกเบตเบญเบฑเบ™เบ•เบฐเบฅเบฒเบ, เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ‚เบญเบ‡ Glibc เบˆเบฐเบˆเบปเปˆเบกเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบšเปเปˆเบกเบต /etc/ld.so.conf. เบ›เป‰เบญเบ‡เบเบฑเบ™เบเบฒเบ™เป€เบ•เบทเบญเบ™เป„เบžเบ™เบตเป‰เบ”เป‰เบงเบ:


เปเบ•เบฐ /etc/ld.so.conf

เปเบ•เบฐ /etc/ld.so.conf


เปเบเป‰เป„เบ‚ Makefile เบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เป€เบžเบทเปˆเบญเบ‚เป‰เบฒเบกเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบชเบธเบ‚เบฐเบžเบฒเบšเบ—เบตเปˆเบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ—เบตเปˆเบฅเบปเป‰เบกเป€เบซเบฅเบงเปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบšเบฒเบ‡เบชเปˆเบงเบ™ LFS:


sed '/test-installation/s@$(PERL)@echo not running@' -i ../Makefile

sed '/test-installation/s@$(PERL)@echo not running@' -i ../Makefile


เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบŠเบธเบ”:


เป€เบฎเบฑเบ”เปƒเบซเป‰เบ•เบดเบ”เบ•เบฑเป‰เบ‡

เป€เบฎเบฑเบ”เปƒเบซเป‰เบ•เบดเบ”เบ•เบฑเป‰เบ‡


เบ•เบดเบ”เบ•เบฑเป‰เบ‡เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปเบฅเบฐ runtime directory เบชเปเบฒเบฅเบฑเบš nscd:


cp -v ../nscd/nscd.conf /etc/nscd.conf mkdir -pv /var/cache/nscd

cp -v ../nscd/nscd.conf /etc/nscd.conf mkdir -pv /var/cache/nscd


เบ•เปเปˆเป„เบ›, เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เปƒเบซเป‰เบฅเบฐเบšเบปเบšเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เปƒเบ™เบžเบฒเบชเบฒเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบšเปเปˆเบกเบตเบšเปˆเบญเบ™เปƒเบ”เบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™, เปเบ•เปˆเบ–เป‰เบฒเบšเบฒเบ‡เบชเปˆเบงเบ™เบ‚เบญเบ‡เบžเบงเบเบกเบฑเบ™เบซเบฒเบเป„เบ›, เบŠเบธเบ”เบ—เบปเบ”เบชเบญเบšเบ‚เบญเบ‡เบŠเบธเบ”เปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”เบˆเบฐเบ‚เป‰เบฒเบกเบŠเบธเบ”เบ—เบปเบ”เบชเบญเบšเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™.


เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบชเปˆเบงเบ™เบšเบธเบเบ„เบปเบ™เบชเบฒเบกเบฒเบ”เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เป‚เบ”เบเปƒเบŠเป‰ เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™ เป‚เบ„เบ‡เบเบฒเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ—เปเบฒเบญเบดเบ” เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™ เบ„เปเบฒโ€‹เบชเบฑเปˆเบ‡โ€‹เบ‚เป‰เบฒเบ‡โ€‹เบฅเบธเปˆเบกโ€‹เบ™เบตเป‰โ€‹เบ›เบฐโ€‹เบชเบปเบกโ€‹เบ›เบฐโ€‹เบชเบฒเบ™โ€‹ /usr/share/i18n/locales/cs_CZ charset-independent locale เบ„เปเบฒเบ™เบดเบเบฒเบกเบเบฑเบš /usr/share/i18n/ charmaps/UTF-8.gz เบ„เปเบฒเบ™เบดเบเบฒเบก charmap เปเบฅเบฐ appends เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบเบฑเบš /usr/lib/locale/locale- เบฎเบงเบšเบฎเบงเบก เป„เบŸเบฅเปŒ. เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบ•เปเปˆเป„เบ›เบ™เบตเป‰เบˆเบฐเบ•เบดเบ”เบ•เบฑเป‰เบ‡เบŠเบธเบ”เบ•เปเบฒเปˆเบชเบธเบ”เบ—เบตเปˆเบ‚เบญเบ‡เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบ‚เบญเบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš:


เบฎเบนเบšเบžเบฒเบšเป€เบฅเบฑเบเบ™เป‰เบญเบ

mkdir -pv /usr/lib/locale

localedef -i POSIX -f UTF-8 C.UTF-8 2> /dev/null || localedef เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡ -i cs_CZ -f UTF-8 cs_CZ.UTF-8

localedef -i de_DE -f ISO-8859-1 de_DE

localedef -i de_DE@euro -f ISO-8859-15 de_DE@euro localedef -i de_DE -f UTF-8 de_DE.UTF-8

localedef -i el_GR -f ISO-8859-7 el_GR localedef -i en_GB -f UTF-8 en_GB.UTF-8 localedef -i en_HK -f ISO-8859-1 en_HK localedef -i en_PH -f ISO-8859-1 en_PH localedef -i en_US -f ISO-8859-1 en_US localedef -i en_US -f UTF-8 en_US.UTF-8 localedef -i es_MX -f ISO-8859-1 es_MX localedef -i fa_IR -f UTF-8 fa_IR localedef - i fr_FR -f ISO-8859-1 fr_FR

localedef -i fr_FR@euro -f ISO-8859-15 fr_FR@euro localedef -i fr_FR -f UTF-8 fr_FR.UTF-8

localedef -i it_IT -f ISO-8859-1 it_IT localedef -i it_IT -f UTF-8 it_IT.UTF-8 localedef -i ja_JP -f EUC-JP ja_JP

localedef -i ja_JP -f SHIFT_JIS ja_JP.SIJS 2> /dev/null || localedef เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡ -i ja_JP -f UTF-8 ja_JP.UTF-8

localedef -i ru_RU -f KOI8-R ru_RU.KOI8-R localedef -i ru_RU -f UTF-8 ru_RU.UTF-8 localedef -i tr_TR -f UTF-8 tr_TR.UTF-8 localedef -i zh_CN -f GB18030 zh_CN .GB18030

localedef -i zh_HK -f BIG5-HKSCS zh_HK.BIG5-HKSCS


เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบชเปเบฒเบฅเบฑเบšเบ›เบฐเป€เบ—เบ”, เบžเบฒเบชเบฒเปเบฅเบฐเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบญเบ‡.

เบญเบตเบเบ—เบฒเบ‡เป€เบฅเบทเบญเบ, เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ—เบธเบเบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบ—เบตเปˆเบกเบตเบฅเบฒเบเบŠเบทเปˆเบขเบนเปˆเปƒเบ™ glibc-2.30/localedata/SupportED เป„เบŸเบฅเปŒ (เบกเบฑเบ™เบ›เบฐเบเบญเบšเบกเบตเบ—เบธเบเป†เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบ—เบตเปˆเบกเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡เปเบฅเบฐเบญเบทเปˆเบ™เป†เบญเบตเบ) เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเปƒเบŠเป‰เป€เบงเบฅเบฒเบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:


เบชเป‰เบฒเบ‡ localedata/install-locales

เบชเป‰เบฒเบ‡ localedata/install-locales


เบฎเบนเบšเบžเบฒเบšเป€เบฅเบฑเบเบ™เป‰เบญเบ

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบ™เบณ เปƒเบŠเป‰ เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™ เบ„เปเบฒเบชเบฑเปˆเบ‡เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เปเบฅเบฐเบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบ—เบตเปˆเบšเปเปˆเบกเบตเบขเบนเปˆเปƒเบ™เบฅเบฒเบเบเบฒเบ™ glibc-2.30/localedata/ เบฎเบญเบ‡เบฎเบฑเบš เป„เบŸเบฅเปŒเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบšเปเปˆเบซเบ™เป‰เบฒเบˆเบฐเป€เบ›เบฑเบ™เบ—เบตเปˆเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ.


เบซเบกเบฒเบโ€‹เป€เบซเบ”โ€‹

เบ”เบฝเบงเบ™เบตเป‰ Glibc เปƒเบŠเป‰ libidn2 เป€เบกเบทเปˆเบญเปเบเป‰เป„เบ‚เบŠเบทเปˆเป‚เบ”เป€เบกเบ™เบชเบฒเบเบปเบ™. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบ‚เบถเป‰เบ™เบเบฑเบšเป€เบงเบฅเบฒเปเบฅเปˆเบ™. เบ–เป‰เบฒเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ™เบตเป‰เบˆเปเบฒเป€เบ›เบฑเบ™, เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ libidn2 เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เบซเบ™เป‰เบฒ BLFS libidn2.

เบซเบกเบฒเบโ€‹เป€เบซเบ”โ€‹

เบ”เบฝเบงเบ™เบตเป‰ Glibc เปƒเบŠเป‰ libidn2 เป€เบกเบทเปˆเบญเปเบเป‰เป„เบ‚เบŠเบทเปˆเป‚เบ”เป€เบกเบ™เบชเบฒเบเบปเบ™. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบ‚เบถเป‰เบ™เบเบฑเบšเป€เบงเบฅเบฒเปเบฅเปˆเบ™. เบ–เป‰เบฒเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ™เบตเป‰เบˆเปเบฒเป€เบ›เบฑเบ™, เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡ libidn2 เปเบกเปˆเบ™เบขเบนเปˆเปƒเบ™เบซเบ™เป‰เบฒ BLFS libidn2.


OS Cloud Computing เบเบญเบ”เบ™เบดเบเบปเบกเบขเบนเปˆ OnWorks: