From 69b078348590726f961bbfbec6e91003ce8c0615 Mon Sep 17 00:00:00 2001 From: Poltern <2363951+Poltern@users.noreply.github.com> Date: Sat, 30 Sep 2023 23:46:50 +0500 Subject: [PATCH] Added multilib support in libffi, libtool, libxcrypt --- chapter08/libffi.xml | 72 +++++++++++++++++++++++++++++++++++++++++ chapter08/libtool.xml | 59 +++++++++++++++++++++++++++++++++ chapter08/libxcrypt.xml | 66 +++++++++++++++++++++++++++++++++++++ 3 files changed, 197 insertions(+) diff --git a/chapter08/libffi.xml b/chapter08/libffi.xml index 571d0fd..a986f0e 100644 --- a/chapter08/libffi.xml +++ b/chapter08/libffi.xml @@ -93,6 +93,78 @@ + + + + + + Установка Libffi - 32-битная версия + + Выполните очистку после предыдущей сборки: + +make distclean + + Подготовьте Libffi к компиляции: + +CC="gcc -m32" CXX="g++ -m32" ./configure \ + --host=i686-pc-linux-gnu \ + --prefix=/usr \ + --libdir=/usr/lib32 \ + --disable-static \ + --with-gcc-arch=i686 + + Скомпилируйте пакет: + +make + + Чтобы протестировать пакет, выполните: + +make check + + Установите пакет: + +make DESTDIR=$PWD/DESTDIR install +cp -Rv DESTDIR/usr/lib32/* /usr/lib32 +rm -rf DESTDIR + + + + + + + + + Установка Libffi - mx32 + + Выполните очистку после предыдущей сборки: + +make distclean + + Подготовьте Libffi к компиляции: + +CC="gcc -mx32" CXX="g++ -mx32" ./configure \ + --host=x86_64-unknown-linux-gnux32 \ + --prefix=/usr \ + --libdir=/usr/libx32 \ + --disable-static \ + --with-gcc-arch=x86_64 + + Скомпилируйте пакет: + +make + + Чтобы протестировать пакет, выполните: + +make check + + Установите пакет: + +make DESTDIR=$PWD/DESTDIR install +cp -Rv DESTDIR/usr/libx32/* /usr/libx32 +rm -rf DESTDIR + + + Содержимое пакета Libffi diff --git a/chapter08/libtool.xml b/chapter08/libtool.xml index d4e9236..c65bd5d 100644 --- a/chapter08/libtool.xml +++ b/chapter08/libtool.xml @@ -77,6 +77,65 @@ + + + + + + Установка Libtool - 32-битная версия + + Выполните очистку после предыдущей сборки: + +make distclean + + Подготовьте Libtool к компиляции: + +CC="gcc -m32" ./configure \ + --host=i686-pc-linux-gnu \ + --prefix=/usr \ + --libdir=/usr/lib32 + + Скомпилируйте пакет: + +make + + Установите пакет: + +make DESTDIR=$PWD/DESTDIR install +cp -Rv DESTDIR/usr/lib32/* /usr/lib32 +rm -rf DESTDIR + + + + + + + + + Установка Libtool - mx32 + + Выполните очистку после предыдущей сборки: + +make distclean + + Подготовьте Libtool к компиляции: + +CC="gcc -mx32" ./configure \ + --host=x86_64-pc-linux-gnux32 \ + --prefix=/usr \ + --libdir=/usr/libx32 + + Скомпилируйте пакет: + +make + + Установите пакет: + +make DESTDIR=$PWD/DESTDIR install +cp -Rv DESTDIR/usr/libx32/* /usr/libx32 +rm -rf DESTDIR + + Содержимое пакета Libtool diff --git a/chapter08/libxcrypt.xml b/chapter08/libxcrypt.xml index 4aa9d42..2f81804 100644 --- a/chapter08/libxcrypt.xml +++ b/chapter08/libxcrypt.xml @@ -114,6 +114,72 @@ cp -av .libs/libcrypt.so.1* /usr/lib + + + + + Установка Libxcrypt - 32-битная версия + + Выполните очистку после предыдущей сборки: + +make distclean + + Подготовьте Libxcrypt к компиляции: + +CC="gcc -m32" \ +./configure --prefix=/usr \ + --host=i686-pc-linux-gnu \ + --libdir=/usr/lib32 \ + --enable-hashes=strong,glibc \ + --enable-obsolete-api=glibc \ + --disable-static \ + --disable-failure-tokens + + Скомпилируйте пакет: + +make + + Установите пакет: + +cp -av .libs/libcrypt.so* /usr/lib32/ && +make install-pkgconfigDATA && +ln -svf libxcrypt.pc /usr/lib32/pkgconfig/libcrypt.pc + + + + + + + + Установка Libxcrypt - mx32 + + Выполните очистку после предыдущей сборки: + +make distclean + + Подготовьте Libxcrypt к компиляции: + +CC="gcc -mx32" \ +./configure --prefix=/usr \ + --host=x86_64-pc-linux-gnux32 \ + --libdir=/usr/libx32 \ + --enable-hashes=strong,glibc \ + --enable-obsolete-api=glibc \ + --disable-static \ + --disable-failure-tokens + + Скомпилируйте пакет: + +make + + Установите пакет: + +cp -av .libs/libcrypt.so* /usr/libx32/ && +make install-pkgconfigDATA && +ln -svf libxcrypt.pc /usr/libx32/pkgconfig/libcrypt.pc + + + Содержимое пакета Libxcrypt