mirror of
https://github.com/Poltern/lfs-ru.git
synced 2024-10-18 20:00:21 +03:00
Added multilib support, small typo
This commit is contained in:
parent
3a75776371
commit
0ace4ec523
@ -318,7 +318,7 @@ readelf -l a.out | grep '/ld-linux'</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all">
|
||||
<title>Сборка Glibc — mx32</title>
|
||||
<title>Сборка Glibc - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Теперь перекомпилируйте Glibc для mx32. Извлеченный исходный код можно использовать
|
||||
повторно, но его необходимо очистить перед установкой версии Glibc mx32.</para>
|
||||
|
@ -231,7 +231,7 @@ rm -rf DESTDIR</userinput></screen>
|
||||
<!-- Multilib - x32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
<sect2 arch="ml_x32,ml_all">
|
||||
<title>Сборка Ncurses — mx32</title>
|
||||
<title>Сборка Ncurses - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
|
@ -170,7 +170,7 @@ rm -rf DESTDIR</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Util-linux - mx32</title>
|
||||
<title>Установка Util-linux - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
|
@ -101,7 +101,7 @@ rm -rf DESTDIR</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Acl - mx32</title>
|
||||
<title>Установка Acl - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
|
@ -101,7 +101,7 @@ rm -rf DESTDIR</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Attr - mx32</title>
|
||||
<title>Установка Attr - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
|
@ -133,7 +133,7 @@ install -Dm644 libbz2.a /usr/lib32/libbz2.a</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Bzip2 - mx32</title>
|
||||
<title>Установка Bzip2 - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
|
@ -102,7 +102,7 @@ rm -rf DESTDIR</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Expat - mx32</title>
|
||||
<title>Установка Expat - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки, но сохраните скомпилированную
|
||||
документацию, поскольку её невозможно пересобрать на этом этапе:</para>
|
||||
|
@ -93,7 +93,7 @@ rm -rf DESTDIR</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка File - mx32</title>
|
||||
<title>Установка File - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
|
@ -560,7 +560,7 @@ readelf -l a.out | grep '/ld-linux'</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all">
|
||||
<title>Сборка Glibc - mx32</title>
|
||||
<title>Сборка Glibc - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Теперь перекомпилируйте Glibc для mx32. Извлеченный исходный код можно
|
||||
использовать повторно, но его необходимо очистить перед установкой mx32 версии Glibc.</para>
|
||||
|
@ -198,7 +198,7 @@ rm -rf DESTDIR</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка GMP - mx32</title>
|
||||
<title>Установка GMP - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
|
@ -137,7 +137,7 @@ rm -rf DESTDIR</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Kmod - mx32</title>
|
||||
<title>Установка Kmod - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки, но сохраните справочные страницы,
|
||||
поскольку их невозможно воссоздать, так как xsltproc еще не установлен:</para>
|
||||
|
@ -103,7 +103,7 @@ rm -rf DESTDIR</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Libcap - mx32</title>
|
||||
<title>Установка Libcap - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
|
@ -104,7 +104,7 @@ rm -rf DESTDIR</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Libelf - mx32</title>
|
||||
<title>Установка Libelf - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
|
@ -134,7 +134,7 @@ rm -rf DESTDIR</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Libffi - mx32</title>
|
||||
<title>Установка Libffi - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
|
@ -112,7 +112,7 @@ rm -rf DESTDIR</userinput></screen>
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Libtool - mx32</title>
|
||||
<title>Установка Libtool - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
|
@ -151,7 +151,7 @@ ln -svf libxcrypt.pc /usr/lib32/pkgconfig/libcrypt.pc</userinput></screen>
|
||||
<!-- Multilib - x32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Libxcrypt - mx32</title>
|
||||
<title>Установка Libxcrypt - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
|
@ -172,6 +172,7 @@ ln -sfv libncurses.so /usr/lib/libcurses.so</userinput></screen>
|
||||
./configure --prefix=/usr \
|
||||
--with-shared \
|
||||
--without-normal \
|
||||
--with-cxx-shared \
|
||||
--without-debug \
|
||||
--without-cxx-binding \
|
||||
--with-abi-version=5
|
||||
@ -181,6 +182,97 @@ cp -av lib/lib*.so.5* /usr/lib</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - 32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
<sect2 arch="ml_32,ml_all">
|
||||
<title>Сборка Ncurses - 32-битная версия</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||
|
||||
<para>Подготовьте Ncurses к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">CC="gcc -m32" CXX="g++ -m32" \
|
||||
./configure --prefix=/usr \
|
||||
--host=i686-pc-linux-gnu \
|
||||
--libdir=/usr/lib32 \
|
||||
--mandir=/usr/share/man \
|
||||
--with-shared \
|
||||
--without-debug \
|
||||
--without-normal \
|
||||
--with-cxx-shared \
|
||||
--enable-pc-files \
|
||||
--enable-widec \
|
||||
--with-pkg-config-libdir=/usr/lib32/pkgconfig</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
|
||||
mkdir -p DESTDIR/usr/lib32/pkgconfig
|
||||
for lib in ncurses form panel menu ; do
|
||||
rm -vf DESTDIR/usr/lib32/lib${lib}.so
|
||||
echo "INPUT(-l${lib}w)" > DESTDIR/usr/lib32/lib${lib}.so
|
||||
ln -svf ${lib}w.pc DESTDIR/usr/lib32/pkgconfig/$lib.pc
|
||||
done
|
||||
rm -vf DESTDIR/usr/lib32/libcursesw.so
|
||||
echo "INPUT(-lncursesw)" > DESTDIR/usr/lib32/libcursesw.so
|
||||
ln -sfv libncurses.so DESTDIR/usr/lib32/libcurses.so
|
||||
cp -Rv DESTDIR/usr/lib32/* /usr/lib32
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- m32 -->
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - x32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
<sect2 arch="ml_x32,ml_all">
|
||||
<title>Сборка Ncurses - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||
|
||||
<para>Подготовьте Ncurses к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">CC="gcc -mx32" CXX="g++ -mx32" \
|
||||
./configure --prefix=/usr \
|
||||
--host=x86_64-pc-linux-gnux32 \
|
||||
--libdir=/usr/libx32 \
|
||||
--mandir=/usr/share/man \
|
||||
--with-shared \
|
||||
--without-debug \
|
||||
--without-normal \
|
||||
--enable-pc-files \
|
||||
--enable-widec \
|
||||
--with-pkg-config-libdir=/usr/libx32/pkgconfig</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
|
||||
mkdir -p DESTDIR/usr/libx32/pkgconfig
|
||||
for lib in ncurses form panel menu ; do
|
||||
rm -vf DESTDIR/usr/libx32/lib${lib}.so
|
||||
echo "INPUT(-l${lib}w)" > DESTDIR/usr/libx32/lib${lib}.so
|
||||
ln -svf ${lib}w.pc DESTDIR/usr/libx32/pkgconfig/$lib.pc
|
||||
done
|
||||
rm -vf DESTDIR/usr/libx32/libcursesw.so
|
||||
echo "INPUT(-lncursesw)" > DESTDIR/usr/libx32/libcursesw.so
|
||||
ln -sfv libncurses.so DESTDIR/usr/libx32/libcurses.so
|
||||
cp -Rv DESTDIR/usr/libx32/* /usr/libx32
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- mx32 -->
|
||||
|
||||
<sect2 id="contents-ncurses" role="content">
|
||||
<title>Содержимое пакета Ncurses</title>
|
||||
|
||||
|
@ -109,6 +109,70 @@ make MANSUFFIX=ssl install</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - 32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_32,ml_all" role="installation">
|
||||
<title>Установка OpenSSL - 32-битная версия</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||
|
||||
<para>Подготовьте OpenSSL к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">./config --prefix=/usr \
|
||||
--openssldir=/etc/ssl \
|
||||
--libdir=lib32 \
|
||||
shared \
|
||||
zlib-dynamic \
|
||||
linux-x86</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
|
||||
cp -Rv DESTDIR/usr/lib32/* /usr/lib32
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- m32 -->
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - x32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка OpenSSL - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||
|
||||
<para>Подготовьте OpenSSL к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">./config --prefix=/usr \
|
||||
--openssldir=/etc/ssl \
|
||||
--libdir=libx32 \
|
||||
shared \
|
||||
zlib-dynamic \
|
||||
linux-x32</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
|
||||
cp -Rv DESTDIR/usr/libx32/* /usr/libx32
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- mx32 -->
|
||||
|
||||
<sect2 id="contents-openssl" role="content">
|
||||
<title>Содержимое пакета OpenSSL</title>
|
||||
|
||||
|
@ -104,6 +104,70 @@ sed -i '/{OLDSUFF}/c:' support/shlib-install</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - 32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_32,ml_all" role="installation">
|
||||
<title>Установка Readline - 32-битная версия</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||
|
||||
<para>Подготовьте Readline к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">CC="gcc -m32" ./configure \
|
||||
--host=i686-pc-linux-gnu \
|
||||
--prefix=/usr \
|
||||
--libdir=/usr/lib32 \
|
||||
--disable-static \
|
||||
--with-curses</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">make SHLIB_LIBS="-lncursesw"</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make SHLIB_LIBS="-lncursesw" DESTDIR=$PWD/DESTDIR install
|
||||
cp -Rv DESTDIR/usr/lib32/* /usr/lib32
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- m32 -->
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - x32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Readline - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||
|
||||
<para>Подготовьте Readline к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">CC="gcc -mx32" ./configure \
|
||||
--host=x86_64-pc-linux-gnux32 \
|
||||
--prefix=/usr \
|
||||
--libdir=/usr/libx32 \
|
||||
--disable-static \
|
||||
--with-curses</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">make SHLIB_LIBS="-lncursesw"</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make SHLIB_LIBS="-lncursesw" DESTDIR=$PWD/DESTDIR install
|
||||
cp -Rv DESTDIR/usr/libx32/* /usr/libx32
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- mx32 -->
|
||||
|
||||
<sect2 id="contents-readline" role="content">
|
||||
<title>Содержимое пакета Readline</title>
|
||||
|
||||
|
@ -83,7 +83,27 @@ for LIB in $save_usrlib; do
|
||||
objcopy --add-gnu-debuglink=$LIB.dbg /tmp/$LIB
|
||||
install -vm755 /tmp/$LIB /usr/lib
|
||||
rm /tmp/$LIB
|
||||
done
|
||||
done</userinput>
|
||||
<userinput arch="ml_32,ml_all">
|
||||
cd /usr/lib32
|
||||
for LIB in $save_usrlib; do
|
||||
objcopy --only-keep-debug $LIB $LIB.dbg
|
||||
cp $LIB /tmp/$LIB
|
||||
strip --strip-unneeded /tmp/$LIB
|
||||
objcopy --add-gnu-debuglink=$LIB.dbg /tmp/$LIB
|
||||
install -vm755 /tmp/$LIB /usr/lib32
|
||||
rm /tmp/$LIB
|
||||
done</userinput>
|
||||
<userinput arch="ml_x32,ml_all">
|
||||
cd /usr/libx32
|
||||
for LIB in $save_usrlib; do
|
||||
objcopy --only-keep-debug $LIB $LIB.dbg
|
||||
cp $LIB /tmp/$LIB
|
||||
strip --strip-unneeded /tmp/$LIB
|
||||
objcopy --add-gnu-debuglink=$LIB.dbg /tmp/$LIB
|
||||
install -vm755 /tmp/$LIB /usr/libx32
|
||||
rm /tmp/$LIB
|
||||
done</userinput><userinput>
|
||||
|
||||
online_usrbin="bash find strip"
|
||||
online_usrlib="libbfd-&binutils-version;.so
|
||||
@ -108,7 +128,19 @@ for LIB in $online_usrlib; do
|
||||
strip --strip-unneeded /tmp/$LIB
|
||||
install -vm755 /tmp/$LIB /usr/lib
|
||||
rm /tmp/$LIB
|
||||
done
|
||||
done</userinput><userinput arch="ml_32,ml_all">
|
||||
for LIB in $online_usrlib; do
|
||||
cp /usr/lib32/$LIB /tmp/$LIB
|
||||
strip --strip-unneeded /tmp/$LIB
|
||||
install -vm755 /tmp/$LIB /usr/lib32
|
||||
rm /tmp/$LIB
|
||||
done</userinput><userinput arch="ml_x32,ml_all">
|
||||
for LIB in $online_usrlib; do
|
||||
cp /usr/libx32/$LIB /tmp/$LIB
|
||||
strip --strip-unneeded /tmp/$LIB
|
||||
install -vm755 /tmp/$LIB /usr/libx32
|
||||
rm /tmp/$LIB
|
||||
done</userinput><userinput>
|
||||
|
||||
for i in $(find /usr/lib -type f -name \*.so* ! -name \*dbg) \
|
||||
$(find /usr/lib -type f -name \*.a) \
|
||||
@ -119,7 +151,25 @@ for i in $(find /usr/lib -type f -name \*.so* ! -name \*dbg) \
|
||||
* ) strip --strip-unneeded $i
|
||||
;;
|
||||
esac
|
||||
done
|
||||
done</userinput><userinput arch="ml_32,ml_all">
|
||||
for i in $(find /usr/lib32 -type f -name \*.so* ! -name \*dbg) \
|
||||
$(find /usr/lib32 -type f -name \*.a); do
|
||||
case "$online_usrbin $online_usrlib $save_usrlib" in
|
||||
*$(basename $i)* )
|
||||
;;
|
||||
* ) strip --strip-unneeded $i
|
||||
;;
|
||||
esac
|
||||
done</userinput><userinput arch="ml_x32,ml_all">
|
||||
for i in $(find /usr/libx32 -type f -name \*.so* ! -name \*dbg) \
|
||||
$(find /usr/libx32 -type f -name \*.a); do
|
||||
case "$online_usrbin $online_usrlib $save_usrlib" in
|
||||
*$(basename $i)* )
|
||||
;;
|
||||
* ) strip --strip-unneeded $i
|
||||
;;
|
||||
esac
|
||||
done</userinput><userinput>
|
||||
|
||||
unset BIN LIB save_usrlib online_usrbin online_usrlib
|
||||
</userinput></screen>
|
||||
|
@ -226,6 +226,129 @@ meson setup \
|
||||
|
||||
</sect2>
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - 32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_32,ml_all" role="installation">
|
||||
<title>Установка systemd - 32-битная версия</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки (находясь в каталоге сборки):</para>
|
||||
|
||||
<screen><userinput remap="pre">rm -rf *</userinput></screen>
|
||||
|
||||
<para>Создайте символическую ссылку, чтобы обойти отсутствие xsltproc:</para>
|
||||
|
||||
<!-- screen><userinput remap="pre">ln -sf /tools/bin/true /usr/bin/xsltproc</userinput></screen -->
|
||||
<screen><userinput remap="pre">ln -sf /bin/true /usr/bin/xsltproc</userinput></screen>
|
||||
|
||||
<!-- with cross-LFS we have util-linux in place:
|
||||
<para>Because we have not yet installed the final version of Util-Linux,
|
||||
create links to the libraries in the approprite location:</para>
|
||||
|
||||
<screen><userinput remap="pre">for file in /tools/lib32/lib{blkid,mount,uuid}*; do
|
||||
ln -sf $file /usr/lib32/
|
||||
done</userinput></screen>
|
||||
-->
|
||||
|
||||
<para>Подготовьте systemd к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">PKG_CONFIG_PATH="/usr/lib32/pkgconfig" \
|
||||
CC="gcc -m32 -march=i686" \
|
||||
CXX="g++ -m32 -march=i686" \
|
||||
LANG=en_US.UTF-8 \
|
||||
meson --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--localstatedir=/var \
|
||||
--libdir=/usr/lib32 \
|
||||
-Drootlibdir=/usr/lib32 \
|
||||
-Dblkid=true \
|
||||
-Ddefault-dnssec=no \
|
||||
-Dfirstboot=false \
|
||||
-Dinstall-tests=false \
|
||||
-Dldconfig=false \
|
||||
-Dsysusers=false \
|
||||
-Db_lto=false \
|
||||
-Drpmmacrosdir=no \
|
||||
-Dhomed=false \
|
||||
-Duserdb=false \
|
||||
-Dman=false \
|
||||
-Dmode=release \
|
||||
..</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">LANG=en_US.UTF-8 ninja</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">LANG=en_US.UTF-8 DESTDIR=$PWD/DESTDIR ninja install
|
||||
cp -Rv DESTDIR/usr/lib32/* /usr/lib32
|
||||
rm -rf DESTDIR
|
||||
rm -f /usr/bin/xsltproc</userinput></screen>
|
||||
|
||||
</sect2><!-- m32 -->
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - x32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка systemd - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки (находясь в каталоге сборки):</para>
|
||||
|
||||
<screen><userinput remap="pre">rm -rf *</userinput></screen>
|
||||
|
||||
<para>Создайте символическую ссылку, чтобы обойти отсутствие xsltproc:</para>
|
||||
|
||||
<screen><userinput remap="pre">ln -sf /bin/true /usr/bin/xsltproc</userinput></screen>
|
||||
<!--
|
||||
<para>Fix an issue on x32:</para>
|
||||
|
||||
<screen><userinput remap="pre">sed '/log_debug/s@PRI_TIMEX@PRIi64@' -i src/timesync/timesyncd-manager.c
|
||||
sed '/long drift_freq;/s@long @int64_t @' -i src/timesync/timesyncd-manager.h</userinput></screen>
|
||||
-->
|
||||
<para>Подготовьте systemd к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">PKG_CONFIG_PATH="/usr/libx32/pkgconfig" \
|
||||
CC="gcc -mx32" \
|
||||
CXX="g++ -mx32" \
|
||||
CFLAGS+=" -Wno-error=shift-overflow" \
|
||||
CXXFLAGS+=" -Wno-error=shift-overflow" \
|
||||
LANG=en_US.UTF-8 \
|
||||
meson --prefix=/usr \
|
||||
--sysconfdir=/etc \
|
||||
--localstatedir=/var \
|
||||
--libdir=/usr/libx32 \
|
||||
-Drootlibdir=/usr/libx32 \
|
||||
-Dblkid=true \
|
||||
-Ddefault-dnssec=no \
|
||||
-Dfirstboot=false \
|
||||
-Dinstall-tests=false \
|
||||
-Dldconfig=false \
|
||||
-Dsysusers=false \
|
||||
-Db_lto=false \
|
||||
-Drpmmacrosdir=no \
|
||||
-Dhomed=false \
|
||||
-Duserdb=false \
|
||||
-Dman=false \
|
||||
-Dmode=release \
|
||||
..</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакетe:</para>
|
||||
|
||||
<screen><userinput remap="make">LANG=en_US.UTF-8 ninja</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">LANG=en_US.UTF-8 DESTDIR=$PWD/DESTDIR ninja install
|
||||
cp -Rv DESTDIR/usr/libx32/* /usr/libx32
|
||||
rm -rf DESTDIR
|
||||
rm -f /usr/bin/xsltproc</userinput></screen>
|
||||
|
||||
</sect2><!-- mx32 -->
|
||||
|
||||
<sect2 id="contents-systemd" role="content">
|
||||
<title>Содержимое пакета systemd</title>
|
||||
|
||||
|
@ -155,6 +155,86 @@ rm /usr/share/man/man8/systemd-*.8</userinput></screen>
|
||||
|
||||
</sect2>
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - 32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
<sect2 arch="ml_32,ml_all" role="installation">
|
||||
<title>Установка Udev - 32-битная версия</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки (находясь в каталоге сборки):</para>
|
||||
|
||||
<screen><userinput remap="pre">rm -rf *</userinput></screen>
|
||||
|
||||
<para>Подготовьте Udev к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">PKG_CONFIG_PATH="/usr/lib32/pkgconfig" \
|
||||
CC="gcc -m32 -march=i686" \
|
||||
CXX="g++ -m32 -march=i686" \
|
||||
LANG=en_US.UTF-8 \
|
||||
meson setup \
|
||||
--prefix=/usr \
|
||||
--buildtype=release \
|
||||
-Dmode=release \
|
||||
-Ddev-kvm-mode=0660 \
|
||||
-Dlink-udev-shared=false \
|
||||
..</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">ninja \
|
||||
$(grep -o -E "^build (src/libudev|src/udev)[^:]*" \
|
||||
build.ninja | awk '{ print $2 }') \
|
||||
$(realpath libudev.so --relative-to .)</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">mkdir -pv /usr/lib32/pkgconfig &&
|
||||
cp -av libudev.so{,*[0-9]} /usr/lib32/ &&
|
||||
sed -e "s;/usr/lib;&32;g" src/libudev/libudev.pc > /usr/lib32/pkgconfig/libudev.pc</userinput></screen>
|
||||
|
||||
</sect2><!-- m32 -->
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - x32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Udev - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки (находясь в каталоге сборки):</para>
|
||||
|
||||
<screen><userinput remap="pre">rm -rf *</userinput></screen>
|
||||
|
||||
<para>Подготовьте Udev к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">PKG_CONFIG_PATH="/usr/libx32/pkgconfig" \
|
||||
CC="gcc -mx32" \
|
||||
CXX="g++ -mx32" \
|
||||
CFLAGS+=" -Wno-error=shift-overflow" \
|
||||
CXXFLAGS+=" -Wno-error=shift-overflow" \
|
||||
LANG=en_US.UTF-8 \
|
||||
meson setup \
|
||||
--prefix=/usr \
|
||||
--buildtype=release \
|
||||
-Dmode=release \
|
||||
-Ddev-kvm-mode=0660 \
|
||||
-Dlink-udev-shared=false \
|
||||
..</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">ninja \
|
||||
$(grep -o -E "^build (src/libudev|src/udev)[^:]*" \
|
||||
build.ninja | awk '{ print $2 }') \
|
||||
$(realpath libudev.so --relative-to .)</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">mkdir -pv /usr/libx32/pkgconfig &&
|
||||
cp -av libudev.so{,*[0-9]} /usr/libx32/ &&
|
||||
sed -e "s;/usr/lib;&x32;g" src/libudev/libudev.pc > /usr/libx32/pkgconfig/libudev.pc</userinput></screen>
|
||||
|
||||
</sect2><!-- mx32 -->
|
||||
|
||||
<sect2 id="conf-udev" role="configuration">
|
||||
<title>Настройка Udev</title>
|
||||
|
||||
|
@ -120,6 +120,138 @@ su tester -c "make -k check"</userinput></screen>
|
||||
-->
|
||||
</sect2>
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - 32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_32,ml_all" role="installation">
|
||||
<title>Установка Util-linux - 32-битная версия</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||
|
||||
<para>Переименуйте инструмент, который необязательно, что будет использоваться скриптом
|
||||
configure, но будет сообщать о недопустимых путях для multilib-сборок.</para>
|
||||
|
||||
<screen><userinput remap="configure">mv /usr/bin/ncursesw6-config{,.tmp}</userinput></screen>
|
||||
|
||||
<para>Подготовьте Util-linux к компиляции:</para>
|
||||
|
||||
<screen revision="sysv"><userinput remap="configure">CC="gcc -m32" \
|
||||
./configure ADJTIME_PATH=/var/lib/hwclock/adjtime \
|
||||
--host=i686-pc-linux-gnu \
|
||||
--libdir=/usr/lib32 \
|
||||
--docdir=/usr/share/doc/util-linux-&util-linux-version; \
|
||||
--disable-chfn-chsh \
|
||||
--disable-login \
|
||||
--disable-nologin \
|
||||
--disable-su \
|
||||
--disable-setpriv \
|
||||
--disable-runuser \
|
||||
--disable-pylibmount \
|
||||
--disable-static \
|
||||
--without-python \
|
||||
--without-systemd \
|
||||
--without-systemdsystemunitdir</userinput></screen>
|
||||
|
||||
<screen revision="systemd"><userinput remap="configure">CC="gcc -m32" \
|
||||
./configure ADJTIME_PATH=/var/lib/hwclock/adjtime \
|
||||
--host=i686-pc-linux-gnu \
|
||||
--libdir=/usr/lib32 \
|
||||
--docdir=/usr/share/doc/util-linux-&util-linux-version; \
|
||||
--disable-chfn-chsh \
|
||||
--disable-login \
|
||||
--disable-nologin \
|
||||
--disable-su \
|
||||
--disable-setpriv \
|
||||
--disable-runuser \
|
||||
--disable-pylibmount \
|
||||
--disable-static \
|
||||
--without-python</userinput></screen>
|
||||
|
||||
<para>Восстановите ранее переименованный инструмент:</para>
|
||||
|
||||
<screen><userinput remap="configure">mv /usr/bin/ncursesw6-config{.tmp,}</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
|
||||
cp -Rv DESTDIR/usr/lib32/* /usr/lib32
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- m32 -->
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - x32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Util-linux - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||
|
||||
<para>Переименуйте инструмент, который необязательно, что будет использоваться скриптом
|
||||
configure, но будет сообщать о недопустимых путях для multilib-сборок.</para>
|
||||
|
||||
<screen><userinput remap="configure">mv /usr/bin/ncursesw6-config{,.tmp}</userinput></screen>
|
||||
|
||||
<para>Подготовьте Util-linux к компиляции:</para>
|
||||
|
||||
<screen revision="sysv"><userinput remap="configure">CC="gcc -mx32" \
|
||||
./configure ADJTIME_PATH=/var/lib/hwclock/adjtime \
|
||||
--host=x86_64-pc-linux-gnux32 \
|
||||
--libdir=/usr/libx32 \
|
||||
--docdir=/usr/share/doc/util-linux-&util-linux-version; \
|
||||
--disable-chfn-chsh \
|
||||
--disable-login \
|
||||
--disable-nologin \
|
||||
--disable-su \
|
||||
--disable-setpriv \
|
||||
--disable-runuser \
|
||||
--disable-pylibmount \
|
||||
--disable-static \
|
||||
--without-python \
|
||||
--without-systemd \
|
||||
--without-systemdsystemunitdir</userinput></screen>
|
||||
|
||||
<screen revision="systemd"><userinput remap="configure">CC="gcc -mx32" \
|
||||
./configure ADJTIME_PATH=/var/lib/hwclock/adjtime \
|
||||
--host=x86_64-pc-linux-gnux32 \
|
||||
--libdir=/usr/libx32 \
|
||||
--docdir=/usr/share/doc/util-linux-&util-linux-version; \
|
||||
--disable-chfn-chsh \
|
||||
--disable-login \
|
||||
--disable-nologin \
|
||||
--disable-su \
|
||||
--disable-setpriv \
|
||||
--disable-runuser \
|
||||
--disable-pylibmount \
|
||||
--disable-static \
|
||||
--without-python</userinput></screen>
|
||||
|
||||
<para>Восстановите ранее переименованный инструмент:</para>
|
||||
|
||||
<screen><userinput remap="configure">mv /usr/bin/ncursesw6-config{.tmp,}</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
|
||||
cp -Rv DESTDIR/usr/libx32/* /usr/libx32
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- mx32 -->
|
||||
|
||||
<sect2 id="contents-utillinux" role="content">
|
||||
<title>Содержимое пакета Util-linux</title>
|
||||
|
||||
|
@ -67,6 +67,68 @@
|
||||
|
||||
</sect2>
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - 32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_32,ml_all" role="installation">
|
||||
<title>Установка Xz - 32-битная версия</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||
|
||||
<para>Подготовьте Xz к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">CC="gcc -m32" ./configure \
|
||||
--host=i686-pc-linux-gnu \
|
||||
--prefix=/usr \
|
||||
--libdir=/usr/lib32 \
|
||||
--disable-static</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
|
||||
cp -Rv DESTDIR/usr/lib32/* /usr/lib32
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- m32 -->
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - x32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Xz - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||
|
||||
<para>Подготовьте Xz к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">CC="gcc -mx32" ./configure \
|
||||
--host=x86_64-pc-linux-gnux32 \
|
||||
--prefix=/usr \
|
||||
--libdir=/usr/libx32 \
|
||||
--disable-static</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
|
||||
cp -Rv DESTDIR/usr/libx32/* /usr/libx32
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- mx32 -->
|
||||
|
||||
<sect2 id="contents-xz" role="content">
|
||||
<title>Содержимое пакета Xz</title>
|
||||
|
||||
|
@ -62,6 +62,64 @@
|
||||
|
||||
</sect2>
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - 32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_32,ml_all" role="installation">
|
||||
<title>Установка Zlib - 32-битная версия</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||
|
||||
<para>Подготовьте Zlib к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">CFLAGS+=" -m32" CXXFLAGS+=" -m32" \
|
||||
./configure --prefix=/usr \
|
||||
--libdir=/usr/lib32</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
|
||||
cp -Rv DESTDIR/usr/lib32/* /usr/lib32
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- m32 -->
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - x32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Zlib - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||
|
||||
<para>Подготовьте Zlib к компиляции:</para>
|
||||
|
||||
<screen><userinput remap="configure">CFLAGS+=" -mx32" CXXFLAGS+=" -mx32" \
|
||||
./configure --prefix=/usr \
|
||||
--libdir=/usr/libx32</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">make</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make DESTDIR=$PWD/DESTDIR install
|
||||
cp -Rv DESTDIR/usr/libx32/* /usr/libx32
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- mx32 -->
|
||||
|
||||
<sect2 id="contents-zlib" role="content">
|
||||
<title>Содержимое пакета Zlib</title>
|
||||
|
||||
|
@ -65,6 +65,54 @@
|
||||
|
||||
</sect2>
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - 32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_32,ml_all" role="installation">
|
||||
<title>Установка Zstd - 32-битная версия</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make clean</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">CC="gcc -m32" make prefix=/usr</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make prefix=/usr DESTDIR=$PWD/DESTDIR install
|
||||
cp -Rv DESTDIR/usr/lib/* /usr/lib32/
|
||||
sed -e "/^libdir/s/lib$/lib32/" -i /usr/lib32/pkgconfig/libzstd.pc
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- m32 -->
|
||||
|
||||
<!-- - - - - - - - - - -->
|
||||
<!-- Multilib - x32bit -->
|
||||
<!-- - - - - - - - - - -->
|
||||
|
||||
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||
<title>Установка Zstd - с поддержкой x32 ABI</title>
|
||||
|
||||
<para>Выполните очистку после предыдущей сборки:</para>
|
||||
|
||||
<screen><userinput remap="pre">make clean</userinput></screen>
|
||||
|
||||
<para>Скомпилируйте пакет:</para>
|
||||
|
||||
<screen><userinput remap="make">CC="gcc -mx32" make prefix=/usr</userinput></screen>
|
||||
|
||||
<para>Установите пакет:</para>
|
||||
|
||||
<screen><userinput remap="install">make prefix=/usr DESTDIR=$PWD/DESTDIR install
|
||||
cp -Rv DESTDIR/usr/lib/* /usr/libx32/
|
||||
sed -e "/^libdir/s/lib$/libx32/" -i /usr/libx32/pkgconfig/libzstd.pc
|
||||
rm -rf DESTDIR</userinput></screen>
|
||||
|
||||
</sect2><!-- mx32 -->
|
||||
|
||||
<sect2 id="contents-zstd" role="content">
|
||||
<title>Содержимое пакета Zstd</title>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user