mirror of
https://git.linuxfromscratch.org/lfs.git
synced 2025-06-19 11:49:20 +01:00
Change profiling attribute to enable selection of m32 and/or mx32. Fixes #4452.
git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/multilib@11571 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689
This commit is contained in:
parent
6702623889
commit
fd48baafd5
8
Makefile
8
Makefile
@ -38,8 +38,12 @@ ifndef ARCH
|
|||||||
ARCH = default
|
ARCH = default
|
||||||
endif
|
endif
|
||||||
ifneq ($(ARCH), default)
|
ifneq ($(ARCH), default)
|
||||||
ifneq ($(ARCH), multilib)
|
ifneq ($(ARCH), ml_32)
|
||||||
$(error ARCH must be either 'default' (default if unset) or 'multilib'.)
|
ifneq ($(ARCH), ml_x32)
|
||||||
|
ifneq ($(ARCH), ml_all)
|
||||||
|
$(error ARCH must be either 'default' (default if unset), 'ml_32', 'ml_x32' or 'ml_all'.)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -39,10 +39,10 @@
|
|||||||
<itemizedlist>
|
<itemizedlist>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>The version of the book being used (in this case
|
<para>The version of the book being used (in this case
|
||||||
<phrase arch="default" revision="sysv">&version;</phrase>
|
<phrase arch="default" revision="sysv">&version;</phrase>
|
||||||
<phrase arch="multilib" revision="sysv">&version;-multilib</phrase>
|
<phrase arch="ml_32,ml_x32,ml_all" revision="sysv">&version;-multilib</phrase>
|
||||||
<phrase arch="default" revision="systemd">&versiond;</phrase>
|
<phrase arch="default" revision="systemd">&versiond;</phrase>
|
||||||
<phrase arch="multilib" revision="systemd">&versiond;-multilib</phrase>)</para>
|
<phrase arch="ml_32,ml_x32,ml_all" revision="systemd">&versiond;-multilib</phrase>)</para>
|
||||||
|
|
||||||
</listitem>
|
</listitem>
|
||||||
<listitem>
|
<listitem>
|
||||||
|
@ -12,9 +12,9 @@
|
|||||||
|
|
||||||
<para>This is version
|
<para>This is version
|
||||||
<phrase arch="default" revision="sysv">&version;</phrase>
|
<phrase arch="default" revision="sysv">&version;</phrase>
|
||||||
<phrase arch="multilib" revision="sysv">&version;-multilib</phrase>
|
<phrase arch="ml_32,ml_x32,ml_all" revision="sysv">&version;-multilib</phrase>
|
||||||
<phrase arch="default" revision="systemd">&versiond;</phrase>
|
<phrase arch="default" revision="systemd">&versiond;</phrase>
|
||||||
<phrase arch="multilib" revision="systemd">&versiond;-multilib</phrase>
|
<phrase arch="ml_32,ml_x32,ml_all" revision="systemd">&versiond;-multilib</phrase>
|
||||||
of the Linux From Scratch book, dated
|
of the Linux From Scratch book, dated
|
||||||
&releasedate;. If this book is more than six months old, a newer and better
|
&releasedate;. If this book is more than six months old, a newer and better
|
||||||
version is probably already available. To find out, please check one of the
|
version is probably already available. To find out, please check one of the
|
||||||
|
@ -47,7 +47,7 @@ PATH=/tools/bin:/bin:/usr/bin
|
|||||||
export LFS LC_ALL LFS_TGT PATH</literal>
|
export LFS LC_ALL LFS_TGT PATH</literal>
|
||||||
EOF</userinput></screen>
|
EOF</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput>cat > ~/.bashrc << "EOF"
|
<screen arch="ml_32,ml_x32,ml_all"><userinput>cat > ~/.bashrc << "EOF"
|
||||||
<literal>set +h
|
<literal>set +h
|
||||||
umask 022
|
umask 022
|
||||||
LFS=/mnt/lfs
|
LFS=/mnt/lfs
|
||||||
|
@ -79,9 +79,12 @@ cd build</userinput></screen>
|
|||||||
--disable-nls \
|
--disable-nls \
|
||||||
--disable-werror</userinput></screen>
|
--disable-werror</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput remap="configure">../configure --prefix=/tools \
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="configure">lpath=/tools/lib</userinput>
|
||||||
|
<userinput remap="configure" arch="ml_32,ml_all">lpath="$lpath:/tools/lib32"</userinput>
|
||||||
|
<userinput remap="configure" arch="ml_x32,ml_all">lpath="$lpath:/tools/libx32"</userinput>
|
||||||
|
<userinput remap="configure">../configure --prefix=/tools \
|
||||||
--with-sysroot=$LFS \
|
--with-sysroot=$LFS \
|
||||||
--with-lib-path=/tools/lib:/tools/lib32:/tools/libx32 \
|
--with-lib-path=$lpath \
|
||||||
--target=$LFS_TGT \
|
--target=$LFS_TGT \
|
||||||
--disable-nls \
|
--disable-nls \
|
||||||
--disable-werror \
|
--disable-werror \
|
||||||
@ -158,14 +161,14 @@ cd build</userinput></screen>
|
|||||||
<para arch="default">If building on x86_64, create a symlink to ensure the
|
<para arch="default">If building on x86_64, create a symlink to ensure the
|
||||||
sanity of the toolchain:</para>
|
sanity of the toolchain:</para>
|
||||||
|
|
||||||
<para arch="multilib">Create a symlink to ensure the sanity of
|
<para arch="ml_32,ml_x32,ml_all">Create a symlink to ensure the sanity of
|
||||||
the toolchain:</para>
|
the toolchain:</para>
|
||||||
|
|
||||||
<screen arch="default"><userinput remap="install">case $(uname -m) in
|
<screen arch="default"><userinput remap="install">case $(uname -m) in
|
||||||
x86_64) mkdir -v /tools/lib && ln -sv lib /tools/lib64 ;;
|
x86_64) mkdir -v /tools/lib && ln -sv lib /tools/lib64 ;;
|
||||||
esac</userinput></screen>
|
esac</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput remap="install">mkdir -v /tools/lib &&
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="install">mkdir -v /tools/lib &&
|
||||||
ln -sv lib /tools/lib64</userinput></screen>
|
ln -sv lib /tools/lib64</userinput></screen>
|
||||||
|
|
||||||
<para>Install the package:</para>
|
<para>Install the package:</para>
|
||||||
|
@ -60,14 +60,17 @@ RANLIB=$LFS_TGT-ranlib \
|
|||||||
--with-lib-path=/tools/lib \
|
--with-lib-path=/tools/lib \
|
||||||
--with-sysroot</userinput></screen>
|
--with-sysroot</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput remap="configure">CC=$LFS_TGT-gcc \
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="configure">lpath=/tools/lib</userinput>
|
||||||
|
<userinput remap="configure" arch="ml_32,ml_all">lpath="$lpath:/tools/lib32"</userinput>
|
||||||
|
<userinput remap="configure" arch="ml_x32,ml_all">lpath="$lpath:/tools/libx32"</userinput>
|
||||||
|
<userinput remap="configure">CC=$LFS_TGT-gcc \
|
||||||
AR=$LFS_TGT-ar \
|
AR=$LFS_TGT-ar \
|
||||||
RANLIB=$LFS_TGT-ranlib \
|
RANLIB=$LFS_TGT-ranlib \
|
||||||
../configure \
|
../configure \
|
||||||
--prefix=/tools \
|
--prefix=/tools \
|
||||||
--disable-nls \
|
--disable-nls \
|
||||||
--disable-werror \
|
--disable-werror \
|
||||||
--with-lib-path=/tools/lib:/tools/lib32:/tools/libx32 \
|
--with-lib-path=$lpath \
|
||||||
--with-sysroot \
|
--with-sysroot \
|
||||||
--enable-64-bit-bfd \
|
--enable-64-bit-bfd \
|
||||||
--enable-multilib</userinput></screen>
|
--enable-multilib</userinput></screen>
|
||||||
@ -95,7 +98,7 @@ RANLIB=$LFS_TGT-ranlib \
|
|||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry arch="multilib">
|
<varlistentry arch="ml_32,ml_x32,ml_all">
|
||||||
<term><parameter>--with-lib-path=/tools/lib:...</parameter></term>
|
<term><parameter>--with-lib-path=/tools/lib:...</parameter></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>This tells the configure script to specify the library
|
<para>This tells the configure script to specify the library
|
||||||
@ -118,14 +121,14 @@ RANLIB=$LFS_TGT-ranlib \
|
|||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry arch="multilib">
|
<varlistentry arch="ml_32,ml_x32,ml_all">
|
||||||
<term><parameter>--enable-64-bit-bfd</parameter></term>
|
<term><parameter>--enable-64-bit-bfd</parameter></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>TODO</para>
|
<para>TODO</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry arch="multilib">
|
<varlistentry arch="ml_32,ml_x32,ml_all">
|
||||||
<term><parameter>--enable-multilib</parameter></term>
|
<term><parameter>--enable-multilib</parameter></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>TODO</para>
|
<para>TODO</para>
|
||||||
@ -149,8 +152,14 @@ RANLIB=$LFS_TGT-ranlib \
|
|||||||
make -C ld LIB_PATH=/usr/lib:/lib
|
make -C ld LIB_PATH=/usr/lib:/lib
|
||||||
cp -v ld/ld-new /tools/bin</userinput></screen>
|
cp -v ld/ld-new /tools/bin</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput remap="adjust">make -C ld clean
|
<screen arch="ml_all"><userinput remap="adjust">make -C ld clean
|
||||||
make -C ld LIB_PATH=/usr/lib:/lib:/usr/lib32:/lib32:/usr/libx32:/libx32
|
make -C ld LIB_PATH=/usr/lib:/lib:/usr/lib32:/lib32:/usr/libx32:/libx32
|
||||||
|
cp -v ld/ld-new /tools/bin</userinput></screen>
|
||||||
|
<screen arch="ml_32"><userinput remap="adjust">make -C ld clean
|
||||||
|
make -C ld LIB_PATH=/usr/lib:/lib:/usr/lib32:/lib32
|
||||||
|
cp -v ld/ld-new /tools/bin</userinput></screen>
|
||||||
|
<screen arch="ml_x32"><userinput remap="adjust">make -C ld clean
|
||||||
|
make -C ld LIB_PATH=/usr/lib:/lib:/usr/libx32:/libx32
|
||||||
cp -v ld/ld-new /tools/bin</userinput></screen>
|
cp -v ld/ld-new /tools/bin</userinput></screen>
|
||||||
|
|
||||||
<variablelist>
|
<variablelist>
|
||||||
|
@ -49,7 +49,7 @@
|
|||||||
rename the resulting directories so the GCC build procedures will
|
rename the resulting directories so the GCC build procedures will
|
||||||
automatically use them:</para>
|
automatically use them:</para>
|
||||||
|
|
||||||
<para arch="multilib">GCC now requires the GMP, ISL, MPFR, and MPC packages.
|
<para arch="ml_32,ml_x32,ml_all">GCC now requires the GMP, ISL, MPFR, and MPC packages.
|
||||||
As these packages may not be included in your host distribution, they will
|
As these packages may not be included in your host distribution, they will
|
||||||
be built with GCC. Unpack each package into the GCC source directory and
|
be built with GCC. Unpack each package into the GCC source directory and
|
||||||
rename the resulting directories so the GCC build procedures will
|
rename the resulting directories so the GCC build procedures will
|
||||||
@ -67,7 +67,7 @@ tar -xf ../gmp-&gmp-version;.tar.xz
|
|||||||
mv -v gmp-&gmp-version; gmp
|
mv -v gmp-&gmp-version; gmp
|
||||||
tar -xf ../mpc-&mpc-version;.tar.gz
|
tar -xf ../mpc-&mpc-version;.tar.gz
|
||||||
mv -v mpc-&mpc-version; mpc</userinput></screen>
|
mv -v mpc-&mpc-version; mpc</userinput></screen>
|
||||||
<screen arch="multilib"><userinput remap="pre">tar -xf ../mpfr-&mpfr-version;.tar.xz
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="pre">tar -xf ../mpfr-&mpfr-version;.tar.xz
|
||||||
mv -v mpfr-&mpfr-version; mpfr
|
mv -v mpfr-&mpfr-version; mpfr
|
||||||
tar -xf ../gmp-&gmp-version;.tar.xz
|
tar -xf ../gmp-&gmp-version;.tar.xz
|
||||||
mv -v gmp-&gmp-version; gmp
|
mv -v gmp-&gmp-version; gmp
|
||||||
@ -121,7 +121,7 @@ done</userinput></screen>
|
|||||||
;;
|
;;
|
||||||
esac</userinput></screen>
|
esac</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput remap="pre">sed -e '/m64=/s/lib64/lib/' \
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="pre">sed -e '/m64=/s/lib64/lib/' \
|
||||||
-i.orig gcc/config/i386/t-linux64
|
-i.orig gcc/config/i386/t-linux64
|
||||||
cat > gcc/config/i386/t-linux64 <<"EOF"
|
cat > gcc/config/i386/t-linux64 <<"EOF"
|
||||||
comma=,
|
comma=,
|
||||||
@ -149,9 +149,9 @@ EOF</userinput></screen>
|
|||||||
<!-- Following patch might be obsolete with gcc >= 8.2.1 -->
|
<!-- Following patch might be obsolete with gcc >= 8.2.1 -->
|
||||||
<!-- see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86724 -->
|
<!-- see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86724 -->
|
||||||
<!-- Fix applied in ch5-gcc-pass{1,2}, ch6-gcc -->
|
<!-- Fix applied in ch5-gcc-pass{1,2}, ch6-gcc -->
|
||||||
<para arch="multilib">Fix an issue with isl-&isl-version;:</para>
|
<para arch="ml_32,ml_x32,ml_all">Fix an issue with isl-&isl-version;:</para>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput remap="pre">sed -e "/#include <isl\/schedule_node.h>/ a#include <isl/id.h>\n#include <isl/space.h>" \
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="pre">sed -e "/#include <isl\/schedule_node.h>/ a#include <isl/id.h>\n#include <isl/space.h>" \
|
||||||
-i gcc/graphite.h</userinput></screen>
|
-i gcc/graphite.h</userinput></screen>
|
||||||
|
|
||||||
<para>The GCC documentation recommends building GCC
|
<para>The GCC documentation recommends building GCC
|
||||||
@ -185,7 +185,10 @@ cd build</userinput></screen>
|
|||||||
--disable-libstdcxx \
|
--disable-libstdcxx \
|
||||||
--enable-languages=c,c++</userinput></screen>
|
--enable-languages=c,c++</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput remap="configure">../configure \
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="configure">mlist="m64"</userinput>
|
||||||
|
<userinput arch="ml_32,ml_all" remap="configure">mlist="$mlist,m32"</userinput>
|
||||||
|
<userinput arch="ml_x32,ml_all" remap="configure">mlist="$mlist,mx32"</userinput>
|
||||||
|
<userinput remap="configure">../configure \
|
||||||
--target=$LFS_TGT \
|
--target=$LFS_TGT \
|
||||||
--prefix=/tools \
|
--prefix=/tools \
|
||||||
--with-glibc-version=2.11 \
|
--with-glibc-version=2.11 \
|
||||||
@ -197,7 +200,7 @@ cd build</userinput></screen>
|
|||||||
--disable-nls \
|
--disable-nls \
|
||||||
--disable-shared \
|
--disable-shared \
|
||||||
--enable-multilib \
|
--enable-multilib \
|
||||||
--with-multilib-list=m32,m64,mx32 \
|
--with-multilib-list=$mlist \
|
||||||
--disable-decimal-float \
|
--disable-decimal-float \
|
||||||
--disable-threads \
|
--disable-threads \
|
||||||
--disable-libatomic \
|
--disable-libatomic \
|
||||||
@ -286,7 +289,7 @@ cd build</userinput></screen>
|
|||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry arch="multilib">
|
<varlistentry arch="ml_32,ml_x32,ml_all">
|
||||||
<term><parameter>--enable-multilib,
|
<term><parameter>--enable-multilib,
|
||||||
--with-multilib-list=m32,m64,mx32</parameter></term>
|
--with-multilib-list=m32,m64,mx32</parameter></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
|
@ -93,10 +93,10 @@ done</userinput></screen>
|
|||||||
;;
|
;;
|
||||||
esac</userinput></screen>
|
esac</userinput></screen>
|
||||||
|
|
||||||
<para arch="multilib">Change the default directory name for 64-bit
|
<para arch="ml_32,ml_x32,ml_all">Change the default directory name for 64-bit
|
||||||
libraries to <quote>lib</quote>:</para>
|
libraries to <quote>lib</quote>:</para>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput remap="pre">sed -e '/m64=/s/lib64/lib/' \
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="pre">sed -e '/m64=/s/lib64/lib/' \
|
||||||
-i.orig gcc/config/i386/t-linux64
|
-i.orig gcc/config/i386/t-linux64
|
||||||
cat > gcc/config/i386/t-linux64 <<"EOF"
|
cat > gcc/config/i386/t-linux64 <<"EOF"
|
||||||
comma=,
|
comma=,
|
||||||
@ -111,7 +111,7 @@ EOF</userinput></screen>
|
|||||||
MPFR, and MPC packages. Unpack the tarballs and move them into the
|
MPFR, and MPC packages. Unpack the tarballs and move them into the
|
||||||
required directory names:</para>
|
required directory names:</para>
|
||||||
|
|
||||||
<para arch="multilib">As in the first build of GCC it requires the GMP,
|
<para arch="ml_32,ml_x32,ml_all">As in the first build of GCC it requires the GMP,
|
||||||
ISL, MPFR, and MPC packages. Unpack the tarballs and move them into the
|
ISL, MPFR, and MPC packages. Unpack the tarballs and move them into the
|
||||||
required directory names:</para>
|
required directory names:</para>
|
||||||
|
|
||||||
@ -121,7 +121,7 @@ tar -xf ../gmp-&gmp-version;.tar.xz
|
|||||||
mv -v gmp-&gmp-version; gmp
|
mv -v gmp-&gmp-version; gmp
|
||||||
tar -xf ../mpc-&mpc-version;.tar.gz
|
tar -xf ../mpc-&mpc-version;.tar.gz
|
||||||
mv -v mpc-&mpc-version; mpc</userinput></screen>
|
mv -v mpc-&mpc-version; mpc</userinput></screen>
|
||||||
<screen arch="multilib"><userinput remap="pre">tar -xf ../mpfr-&mpfr-version;.tar.xz
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="pre">tar -xf ../mpfr-&mpfr-version;.tar.xz
|
||||||
mv -v mpfr-&mpfr-version; mpfr
|
mv -v mpfr-&mpfr-version; mpfr
|
||||||
tar -xf ../gmp-&gmp-version;.tar.xz
|
tar -xf ../gmp-&gmp-version;.tar.xz
|
||||||
mv -v gmp-&gmp-version; gmp
|
mv -v gmp-&gmp-version; gmp
|
||||||
@ -131,9 +131,9 @@ tar -xf ../isl-&isl-version;.tar.xz
|
|||||||
mv -v isl-&isl-version; isl</userinput></screen>
|
mv -v isl-&isl-version; isl</userinput></screen>
|
||||||
|
|
||||||
<!-- Following patch might be obsolete with gcc >= 8.2.1 -->
|
<!-- Following patch might be obsolete with gcc >= 8.2.1 -->
|
||||||
<para arch="multilib">Fix an issue with isl-&isl-version;:</para>
|
<para arch="ml_32,ml_x32,ml_all">Fix an issue with isl-&isl-version;:</para>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput remap="pre">sed -e "/#include <isl\/schedule_node.h>/ a#include <isl/id.h>\n#include <isl/space.h>" \
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="pre">sed -e "/#include <isl\/schedule_node.h>/ a#include <isl/id.h>\n#include <isl/space.h>" \
|
||||||
-i gcc/graphite.h</userinput></screen>
|
-i gcc/graphite.h</userinput></screen>
|
||||||
|
|
||||||
<para>Create a separate build directory again:</para>
|
<para>Create a separate build directory again:</para>
|
||||||
@ -160,7 +160,10 @@ RANLIB=$LFS_TGT-ranlib \
|
|||||||
--disable-bootstrap \
|
--disable-bootstrap \
|
||||||
--disable-libgomp</userinput></screen>
|
--disable-libgomp</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput remap="configure">CC=$LFS_TGT-gcc \
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="configure">mlist="m64"</userinput>
|
||||||
|
<userinput arch="ml_32,ml_all" remap="configure">mlist="$mlist,m32"</userinput>
|
||||||
|
<userinput arch="ml_x32,ml_all" remap="configure">mlist="$mlist,mx32"</userinput>
|
||||||
|
<userinput remap="configure">CC=$LFS_TGT-gcc \
|
||||||
CXX=$LFS_TGT-g++ \
|
CXX=$LFS_TGT-g++ \
|
||||||
AR=$LFS_TGT-ar \
|
AR=$LFS_TGT-ar \
|
||||||
RANLIB=$LFS_TGT-ranlib \
|
RANLIB=$LFS_TGT-ranlib \
|
||||||
@ -171,7 +174,7 @@ RANLIB=$LFS_TGT-ranlib \
|
|||||||
--enable-languages=c,c++ \
|
--enable-languages=c,c++ \
|
||||||
--disable-libstdcxx-pch \
|
--disable-libstdcxx-pch \
|
||||||
--enable-multilib \
|
--enable-multilib \
|
||||||
--with-multilib-list=m32,m64,mx32 \
|
--with-multilib-list=$mlist \
|
||||||
--with-system-zlib \
|
--with-system-zlib \
|
||||||
--disable-bootstrap \
|
--disable-bootstrap \
|
||||||
--disable-libgomp</userinput></screen>
|
--disable-libgomp</userinput></screen>
|
||||||
@ -244,23 +247,23 @@ readelf -l a.out | grep ': /tools'</userinput></screen>
|
|||||||
<screen><computeroutput>[Requesting program interpreter: /tools/lib64/ld-linux-x86-64.so.2]</computeroutput></screen>
|
<screen><computeroutput>[Requesting program interpreter: /tools/lib64/ld-linux-x86-64.so.2]</computeroutput></screen>
|
||||||
|
|
||||||
|
|
||||||
<para arch="multilib">Repeat the test for 32-bit:</para>
|
<para arch="ml_32,ml_all">Repeat the test for 32-bit:</para>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput>cc -m32 dummy.c
|
<screen arch="ml_32,ml_all"><userinput>cc -m32 dummy.c
|
||||||
readelf -l a.out | grep ': /tools'</userinput></screen>
|
readelf -l a.out | grep ': /tools'</userinput></screen>
|
||||||
|
|
||||||
<para arch="multilib">In this case, the output shoud be:</para>
|
<para arch="ml_32,ml_all">In this case, the output shoud be:</para>
|
||||||
|
|
||||||
<screen arch="multilib"><computeroutput>[Requesting program interpreter: /tools/lib/ld-linux.so.2]</computeroutput></screen>
|
<screen arch="ml_32,ml_all"><computeroutput>[Requesting program interpreter: /tools/lib/ld-linux.so.2]</computeroutput></screen>
|
||||||
|
|
||||||
<para arch="multilib">Repeat the test for x32-bit:</para>
|
<para arch="ml_x32,ml_all">Repeat the test for x32-bit:</para>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput>cc -mx32 dummy.c
|
<screen arch="ml_x32,ml_all"><userinput>cc -mx32 dummy.c
|
||||||
readelf -l a.out | grep ': /tools'</userinput></screen>
|
readelf -l a.out | grep ': /tools'</userinput></screen>
|
||||||
|
|
||||||
<para arch="multilib">In this case, the output shoud be:</para>
|
<para arch="ml_x32,ml_all">In this case, the output shoud be:</para>
|
||||||
|
|
||||||
<screen arch="multilib"><computeroutput>[Requesting program interpreter: /tools/lib/ld-linux-x32.so.2]</computeroutput></screen>
|
<screen arch="ml_x32,ml_all"><computeroutput>[Requesting program interpreter: /tools/lib/ld-linux-x32.so.2]</computeroutput></screen>
|
||||||
|
|
||||||
<para arch="default">Note that the dynamic linker will be
|
<para arch="default">Note that the dynamic linker will be
|
||||||
/tools/lib/ld-linux.so.2 for 32-bit machines.</para>
|
/tools/lib/ld-linux.so.2 for 32-bit machines.</para>
|
||||||
|
@ -82,7 +82,7 @@ cd build</userinput></screen>
|
|||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry arch="multilib">
|
<varlistentry arch="ml_32,ml_x32,ml_all">
|
||||||
<term><parameter>--enable-multi-arch</parameter></term>
|
<term><parameter>--enable-multi-arch</parameter></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>Enables glibc for multiarch environments.</para>
|
<para>Enables glibc for multiarch environments.</para>
|
||||||
@ -191,7 +191,7 @@ readelf -l a.out | grep ': /tools'</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Glibc 32-bit</title>
|
<title>Installation of Glibc 32-bit</title>
|
||||||
|
|
||||||
<para>Clean the build directory for redoing glibc for 32-bit:</para>
|
<para>Clean the build directory for redoing glibc for 32-bit:</para>
|
||||||
@ -213,9 +213,10 @@ RANLIB="${LFS_TGT}-ranlib" \
|
|||||||
--libdir=/tools/lib32 \
|
--libdir=/tools/lib32 \
|
||||||
--libexecdir=/tools/lib32 \
|
--libexecdir=/tools/lib32 \
|
||||||
--with-headers=/tools/include \
|
--with-headers=/tools/include \
|
||||||
--with-binutils=/tools/bin \
|
--with-binutils=/tools/bin</userinput></screen>
|
||||||
|
<!-- \
|
||||||
libc_cv_forced_unwind=yes \
|
libc_cv_forced_unwind=yes \
|
||||||
libc_cv_c_cleanup=yes</userinput></screen>
|
libc_cv_c_cleanup=yes</userinput></screen> -->
|
||||||
|
|
||||||
<para>Now compile the 32-bit version of glibc:</para>
|
<para>Now compile the 32-bit version of glibc:</para>
|
||||||
<screen><userinput remap="make">make</userinput></screen>
|
<screen><userinput remap="make">make</userinput></screen>
|
||||||
@ -231,7 +232,7 @@ cd ..</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Glibc x32-bit</title>
|
<title>Installation of Glibc x32-bit</title>
|
||||||
|
|
||||||
<para>Create a build directory for redoing glibc for x32-bit:</para>
|
<para>Create a build directory for redoing glibc for x32-bit:</para>
|
||||||
@ -253,9 +254,10 @@ RANLIB="${LFS_TGT}-ranlib" \
|
|||||||
--libdir=/tools/libx32 \
|
--libdir=/tools/libx32 \
|
||||||
--libexecdir=/tools/libx32 \
|
--libexecdir=/tools/libx32 \
|
||||||
--with-headers=/tools/include \
|
--with-headers=/tools/include \
|
||||||
--with-binutils=/tools/bin \
|
--with-binutils=/tools/bin</userinput></screen>
|
||||||
|
<!-- \
|
||||||
libc_cv_forced_unwind=yes \
|
libc_cv_forced_unwind=yes \
|
||||||
libc_cv_c_cleanup=yes</userinput></screen>
|
libc_cv_c_cleanup=yes</userinput></screen> -->
|
||||||
|
|
||||||
<para>Now compile the x32-bit version of glibc:</para>
|
<para>Now compile the x32-bit version of glibc:</para>
|
||||||
<screen><userinput remap="make">make</userinput></screen>
|
<screen><userinput remap="make">make</userinput></screen>
|
||||||
|
@ -112,7 +112,7 @@ ln -s libncursesw.so /tools/lib/libncurses.so</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Ncurses - 32 bit</title>
|
<title>Installation of Ncurses - 32 bit</title>
|
||||||
|
|
||||||
<para>Prepare Ncurses for compilation:</para>
|
<para>Prepare Ncurses for compilation:</para>
|
||||||
@ -143,7 +143,7 @@ cp -Rv DESTDIR_32/tools/lib32/* /tools/lib32</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Ncurses - x32 bit</title>
|
<title>Installation of Ncurses - x32 bit</title>
|
||||||
|
|
||||||
<para>Repeat for the x32-ABI:</para>
|
<para>Repeat for the x32-ABI:</para>
|
||||||
|
@ -18,7 +18,11 @@
|
|||||||
<screen arch="default"><userinput>strip --strip-debug /tools/lib/*
|
<screen arch="default"><userinput>strip --strip-debug /tools/lib/*
|
||||||
/usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
|
/usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput>strip --strip-debug /tools/lib{,{,x}32}/*
|
<screen arch="ml_32"><userinput>strip --strip-debug /tools/lib{,32}/*
|
||||||
|
/usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
|
||||||
|
<screen arch="ml_x32"><userinput>strip --strip-debug /tools/lib{,x32}/*
|
||||||
|
/usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
|
||||||
|
<screen arch="ml_all"><userinput>strip --strip-debug /tools/lib{,{,x}32}/*
|
||||||
/usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
|
/usr/bin/strip --strip-unneeded /tools/{,s}bin/*</userinput></screen>
|
||||||
|
|
||||||
<para>These commands will skip a number of files, reporting that it does not
|
<para>These commands will skip a number of files, reporting that it does not
|
||||||
@ -38,7 +42,9 @@
|
|||||||
|
|
||||||
<screen arch="default"><userinput>find /tools/{lib,libexec} -name \*.la -delete</userinput></screen>
|
<screen arch="default"><userinput>find /tools/{lib,libexec} -name \*.la -delete</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput>find /tools/{lib{,{,x}32},libexec} -name \*.la -delete</userinput></screen>
|
<screen arch="ml_32"><userinput>find /tools/{lib{,32},libexec} -name \*.la -delete</userinput></screen>
|
||||||
|
<screen arch="ml_x32"><userinput>find /tools/{lib{,x32},libexec} -name \*.la -delete</userinput></screen>
|
||||||
|
<screen arch="ml_all"><userinput>find /tools/{lib{,{,x}32},libexec} -name \*.la -delete</userinput></screen>
|
||||||
|
|
||||||
<para>At this point, you should have at least 3 GB of free space in
|
<para>At this point, you should have at least 3 GB of free space in
|
||||||
<envar>$LFS</envar> that can be used to build and install Glibc and Gcc in
|
<envar>$LFS</envar> that can be used to build and install Glibc and Gcc in
|
||||||
|
@ -121,7 +121,7 @@
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Util-Linux - 32 bit</title>
|
<title>Installation of Util-Linux - 32 bit</title>
|
||||||
|
|
||||||
<para>Prepare Util-Linux for compilation:</para>
|
<para>Prepare Util-Linux for compilation:</para>
|
||||||
@ -153,7 +153,7 @@ cp -Rv DESTDIR_32/tools/lib32/* /tools/lib32</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Util-Linux - x32 bit</title>
|
<title>Installation of Util-Linux - x32 bit</title>
|
||||||
|
|
||||||
<para>Repeat for the x32-ABI:</para>
|
<para>Repeat for the x32-ABI:</para>
|
||||||
|
@ -63,7 +63,7 @@
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Xz - 32 bit</title>
|
<title>Installation of Xz - 32 bit</title>
|
||||||
|
|
||||||
<para>Prepare Xz for compilation:</para>
|
<para>Prepare Xz for compilation:</para>
|
||||||
@ -90,7 +90,7 @@ cp -Rv DESTDIR_32/tools/lib32/* /tools/lib32</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Xz - x32 bit</title>
|
<title>Installation of Xz - x32 bit</title>
|
||||||
|
|
||||||
<para>Repeat for the x32-ABI:</para>
|
<para>Repeat for the x32-ABI:</para>
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
%general-entities;
|
%general-entities;
|
||||||
]>
|
]>
|
||||||
|
|
||||||
<sect1 arch="multilib" id="ch-tools-zlib" role="wrap">
|
<sect1 arch="ml_32,ml_x32,ml_all" id="ch-tools-zlib" role="wrap">
|
||||||
<?dbhtml filename="zlib.html"?>
|
<?dbhtml filename="zlib.html"?>
|
||||||
|
|
||||||
<sect1info condition="script">
|
<sect1info condition="script">
|
||||||
@ -59,7 +59,7 @@
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Zlib - 32 bit</title>
|
<title>Installation of Zlib - 32 bit</title>
|
||||||
|
|
||||||
<para>Prepare Zlib for compilation:</para>
|
<para>Prepare Zlib for compilation:</para>
|
||||||
@ -82,7 +82,7 @@ cp -Rv DESTDIR_32/tools/lib32/* /tools/lib32</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Zlib - x32 bit</title>
|
<title>Installation of Zlib - x32 bit</title>
|
||||||
|
|
||||||
<para>Repeat for the x32-ABI:</para>
|
<para>Repeat for the x32-ABI:</para>
|
||||||
|
@ -79,7 +79,9 @@ ln -sfv ../../lib/$(readlink /usr/lib/libacl.so) /usr/lib/libacl.so</userinput><
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Acl - 32-bit</title>
|
<title>Installation of Acl - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -105,7 +107,9 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Acl - x32-bit</title>
|
<title>Installation of Acl - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -78,7 +78,9 @@ ln -sfv ../../lib/$(readlink /usr/lib/libattr.so) /usr/lib/libattr.so</userinput
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Attr - 32-bit</title>
|
<title>Installation of Attr - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -105,7 +107,9 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Attr - x32-bit</title>
|
<title>Installation of Attr - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -97,7 +97,9 @@ ln -sv bzip2 /bin/bzcat</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Bzip2 - 32-bit</title>
|
<title>Installation of Bzip2 - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -121,7 +123,9 @@ install -Dm644 libbz2.a /usr/lib32/libbz2.a</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Bzip2 - x32-bit</title>
|
<title>Installation of Bzip2 - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="glibc.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="glibc.xml"/>
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="adjusting.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="adjusting.xml"/>
|
||||||
|
|
||||||
<!-- arch="multilib" only -->
|
<!-- arch="ml_32,ml_x32,ml_all" only -->
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="glibc-32.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="glibc-32.xml"/>
|
||||||
|
|
||||||
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="zlib.xml"/>
|
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="zlib.xml"/>
|
||||||
|
@ -47,15 +47,14 @@ ln -sv /tools/lib/libstdc++.{a,so{,.6}} /usr/lib
|
|||||||
install -vdm755 /usr/lib/pkgconfig
|
install -vdm755 /usr/lib/pkgconfig
|
||||||
|
|
||||||
ln -sv bash /bin/sh</userinput></screen>
|
ln -sv bash /bin/sh</userinput></screen>
|
||||||
<screen arch="multilib"><userinput>ln -sv /tools/bin/{bash,cat,chmod,dd,echo,ln,mkdir,pwd,rm,stty,touch} /bin
|
<screen arch="ml_32,ml_x32,ml_all"><userinput>ln -sv /tools/bin/{bash,cat,chmod,dd,echo,ln,mkdir,pwd,rm,stty,touch} /bin
|
||||||
ln -sv /tools/bin/{env,install,perl,printf} /usr/bin
|
ln -sv /tools/bin/{env,install,perl,printf} /usr/bin
|
||||||
for lib in lib{,32,x32}; do
|
for lib in lib{</userinput><userinput arch="ml_32,ml_all">,32</userinput><userinput arch="ml_x32,ml_all">,x32</userinput><userinput>}; do
|
||||||
ln -sv /tools/$lib/libgcc_s.so{,.1} /usr/$lib
|
ln -sv /tools/$lib/libgcc_s.so{,.1} /usr/$lib
|
||||||
ln -sv /tools/$lib/libstdc++.{a,so{,.6}} /usr/$lib
|
ln -sv /tools/$lib/libstdc++.{a,so{,.6}} /usr/$lib
|
||||||
done
|
done
|
||||||
ln -sv /usr/libx32 /
|
</userinput><userinput arch="ml_x32,ml_all">ln -sv /usr/libx32 /</userinput><userinput>
|
||||||
|
install -vdm755 /usr/lib{</userinput><userinput arch="ml_32,ml_all">,32</userinput><userinput arch="ml_x32,ml_all">,x32</userinput><userinput>}/pkgconfig
|
||||||
install -vdm755 /usr/lib{,32,x32}/pkgconfig
|
|
||||||
|
|
||||||
ln -sv bash /bin/sh</userinput></screen>
|
ln -sv bash /bin/sh</userinput></screen>
|
||||||
|
|
||||||
|
@ -31,7 +31,7 @@ mkdir -v /var/{log,mail,spool}
|
|||||||
ln -sv /run /var/run
|
ln -sv /run /var/run
|
||||||
ln -sv /run/lock /var/lock
|
ln -sv /run/lock /var/lock
|
||||||
mkdir -pv /var/{opt,cache,lib/{color,misc,locate},local}</userinput></screen>
|
mkdir -pv /var/{opt,cache,lib/{color,misc,locate},local}</userinput></screen>
|
||||||
<screen arch="multilib"><userinput>mkdir -pv /{bin,boot,etc/{opt,sysconfig,ld.so.conf.d},home,lib/firmware,mnt,opt}
|
<screen arch="ml_32,ml_x32,ml_all"><userinput>mkdir -pv /{bin,boot,etc/{opt,sysconfig,ld.so.conf.d},home,lib/firmware,mnt,opt}
|
||||||
mkdir -pv /{media/{floppy,cdrom},sbin,srv,var}
|
mkdir -pv /{media/{floppy,cdrom},sbin,srv,var}
|
||||||
install -dv -m 0750 /root
|
install -dv -m 0750 /root
|
||||||
install -dv -m 1777 /tmp /var/tmp
|
install -dv -m 1777 /tmp /var/tmp
|
||||||
@ -44,8 +44,9 @@ mkdir -v /lib64
|
|||||||
mkdir -v /var/{log,mail,spool}
|
mkdir -v /var/{log,mail,spool}
|
||||||
ln -sv /run /var/run
|
ln -sv /run /var/run
|
||||||
ln -sv /run/lock /var/lock
|
ln -sv /run/lock /var/lock
|
||||||
mkdir -pv /var/{opt,cache,lib/{color,misc,locate},local}
|
mkdir -pv /var/{opt,cache,lib/{color,misc,locate},local}</userinput>
|
||||||
mkdir -pv /usr/lib{,x}32</userinput></screen>
|
<userinput arch="ml_32,ml_all">mkdir -pv /usr/lib32</userinput>
|
||||||
|
<userinput arch="ml_x32,ml_all">mkdir -pv /usr/libx32</userinput></screen>
|
||||||
|
|
||||||
<para>Directories are, by default, created with permission mode 755, but
|
<para>Directories are, by default, created with permission mode 755, but
|
||||||
this is not desirable for all directories. In the commands above, two
|
this is not desirable for all directories. In the commands above, two
|
||||||
|
@ -106,7 +106,7 @@ make -f &udev-lfs-version;/Makefile.lfs install</userinput></screen>
|
|||||||
|
|
||||||
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Eudev - 32-bit</title>
|
<title>Installation of Eudev - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -143,7 +143,7 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Eudev - x32-bit</title>
|
<title>Installation of Eudev - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -69,7 +69,9 @@
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Expat - 32-bit</title>
|
<title>Installation of Expat - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build but keep precompiled doc because it
|
<para>Clean previous build but keep precompiled doc because it
|
||||||
@ -97,7 +99,9 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Zlib - x32-bit</title>
|
<title>Installation of Zlib - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -59,7 +59,9 @@
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of File - 32-bit</title>
|
<title>Installation of File - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -85,7 +87,9 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of File - x32-bit</title>
|
<title>Installation of File - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -51,10 +51,10 @@
|
|||||||
;;
|
;;
|
||||||
esac</userinput></screen>
|
esac</userinput></screen>
|
||||||
|
|
||||||
<para arch="multilib">Change the default directory name for 64-bit
|
<para arch="ml_32,ml_x32,ml_all">Change the default directory name for 64-bit
|
||||||
libraries to <quote>lib</quote>:</para>
|
libraries to <quote>lib</quote>:</para>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput remap="pre">sed -e '/m64=/s/lib64/lib/' \
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="pre">sed -e '/m64=/s/lib64/lib/' \
|
||||||
-i.orig gcc/config/i386/t-linux64
|
-i.orig gcc/config/i386/t-linux64
|
||||||
cat > gcc/config/i386/t-linux64 <<"EOF"
|
cat > gcc/config/i386/t-linux64 <<"EOF"
|
||||||
comma=,
|
comma=,
|
||||||
@ -90,13 +90,29 @@ cd build</userinput></screen>
|
|||||||
--disable-bootstrap \
|
--disable-bootstrap \
|
||||||
--disable-libmpx \
|
--disable-libmpx \
|
||||||
--with-system-zlib</userinput></screen>
|
--with-system-zlib</userinput></screen>
|
||||||
|
<screen arch="ml_32"><userinput remap="configure">SED=sed \
|
||||||
<screen arch="multilib"><userinput remap="configure">SED=sed \
|
|
||||||
../configure --prefix=/usr \
|
../configure --prefix=/usr \
|
||||||
--enable-languages=c,c++ \
|
--enable-languages=c,c++ \
|
||||||
--enable-multilib \
|
--enable-multilib \
|
||||||
--with-multilib-list=m32,m64,mx32 \
|
--with-multilib-list=m32,m64 \
|
||||||
--disable-bootstrap \
|
--disable-bootstrap \
|
||||||
|
--disable-libmpx \
|
||||||
|
--with-system-zlib</userinput></screen>
|
||||||
|
<screen arch="ml_x32"><userinput remap="configure">SED=sed \
|
||||||
|
../configure --prefix=/usr \
|
||||||
|
--enable-languages=c,c++ \
|
||||||
|
--enable-multilib \
|
||||||
|
--with-multilib-list=mx32,m64 \
|
||||||
|
--disable-bootstrap \
|
||||||
|
--disable-libmpx \
|
||||||
|
--with-system-zlib</userinput></screen>
|
||||||
|
<screen arch="ml_all"><userinput remap="configure">SED=sed \
|
||||||
|
../configure --prefix=/usr \
|
||||||
|
--enable-languages=c,c++ \
|
||||||
|
--enable-multilib \
|
||||||
|
--with-multilib-list=m32,mx32,m64 \
|
||||||
|
--disable-bootstrap \
|
||||||
|
--disable-libmpx \
|
||||||
--with-system-zlib</userinput></screen>
|
--with-system-zlib</userinput></screen>
|
||||||
|
|
||||||
<para>Note that for other languages, there are some prerequisites that
|
<para>Note that for other languages, there are some prerequisites that
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
%general-entities;
|
%general-entities;
|
||||||
]>
|
]>
|
||||||
|
|
||||||
<sect1 arch="multilib" id="ch-system-glibc-32" role="wrap">
|
<sect1 arch="ml_32,ml_x32,ml_all" id="ch-system-glibc-32" role="wrap">
|
||||||
<?dbhtml filename="glibc-32.html"?>
|
<?dbhtml filename="glibc-32.html"?>
|
||||||
|
|
||||||
<sect1info condition="script">
|
<sect1info condition="script">
|
||||||
@ -40,7 +40,10 @@
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
-->
|
-->
|
||||||
<sect2 role="installation">
|
|
||||||
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Glibc - 32-bit</title>
|
<title>Installation of Glibc - 32-bit</title>
|
||||||
|
|
||||||
<screen><userinput remap="pre">patch -Np1 -i ../&glibc-fhs-patch;</userinput></screen>
|
<screen><userinput remap="pre">patch -Np1 -i ../&glibc-fhs-patch;</userinput></screen>
|
||||||
@ -97,7 +100,9 @@ rm -rf build</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2>
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Glibc - x32-bit</title>
|
<title>Glibc - x32-bit</title>
|
||||||
|
|
||||||
<para>The Glibc documentation recommends building Glibc
|
<para>The Glibc documentation recommends building Glibc
|
||||||
|
@ -121,7 +121,7 @@ make install-html</userinput></screen>
|
|||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<!-- ~~~~~ m32 ~~~~~ -->
|
<!-- ~~~~~ m32 ~~~~~ -->
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of GMP - 32-bit</title>
|
<title>Installation of GMP - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -172,8 +172,8 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<!-- ~~~~~ m32 ~~~~~ -->
|
<!-- ~~~~~ mx32 ~~~~~ -->
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of GMP - x32-bit</title>
|
<title>Installation of GMP - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -97,7 +97,9 @@ ln -sfv kmod /bin/lsmod</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Kmod - 32-bit</title>
|
<title>Installation of Kmod - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build but keep man pages as they cannot be recreated
|
<para>Clean previous build but keep man pages as they cannot be recreated
|
||||||
@ -129,7 +131,9 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Kmod - x32-bit</title>
|
<title>Installation of Kmod - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -92,7 +92,7 @@ ln -sfv ../../lib/$(readlink /usr/lib/libcap.so) /usr/lib/libcap.so</userinput><
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Libcap - 32-bit</title>
|
<title>Installation of Libcap - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -111,7 +111,7 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Libcap - x32-bit</title>
|
<title>Installation of Libcap - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -63,7 +63,7 @@ install -vm644 config/libelf.pc /usr/lib/pkgconfig</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Libelf - 32-bit</title>
|
<title>Installation of Libelf - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -90,7 +90,7 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Libelf - x32-bit</title>
|
<title>Installation of Libelf - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -98,8 +98,9 @@ sed -e '/^includedir/ s/=.*$/=@includedir@/' \
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<!-- ~~~~~ m32 ~~~~~ -->
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
<sect2 arch="multilib" role="installation">
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Libffi - 32-bit</title>
|
<title>Installation of Libffi - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -132,8 +133,9 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<!-- ~~~~~ mx32 ~~~~~ -->
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
<sect2 arch="multilib" role="installation">
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Libffi - x32-bit</title>
|
<title>Installation of Libffi - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -70,8 +70,9 @@
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Libtool - 32-bit</title>
|
<title>Installation of Libtool - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -97,7 +98,9 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Libtool - x32-bit</title>
|
<title>Installation of Libtool - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -54,7 +54,7 @@
|
|||||||
--without-normal \
|
--without-normal \
|
||||||
--enable-pc-files \
|
--enable-pc-files \
|
||||||
--enable-widec</userinput></screen>
|
--enable-widec</userinput></screen>
|
||||||
<screen arch="multilib"><userinput remap="configure">./configure --prefix=/usr \
|
<screen arch="ml_32,ml_x32,ml_all"><userinput remap="configure">./configure --prefix=/usr \
|
||||||
--mandir=/usr/share/man \
|
--mandir=/usr/share/man \
|
||||||
--with-shared \
|
--with-shared \
|
||||||
--without-debug \
|
--without-debug \
|
||||||
@ -96,7 +96,7 @@
|
|||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
||||||
<varlistentry arch="multilib">
|
<varlistentry arch="ml_32,ml_x32,ml_all">
|
||||||
<term><parameter>--with-pkg-config-libdir=/usr/lib/pkgconfig</parameter></term>
|
<term><parameter>--with-pkg-config-libdir=/usr/lib/pkgconfig</parameter></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>This switch forces .pc to be installed in /usr/lib/pkgconfig. If
|
<para>This switch forces .pc to be installed in /usr/lib/pkgconfig. If
|
||||||
@ -178,7 +178,9 @@ cp -av lib/lib*.so.5* /usr/lib</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Ncurses - 32-bit</title>
|
<title>Installation of Ncurses - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -233,7 +235,9 @@ cp -av lib/lib*.so.5* /usr/lib32</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Ncurses - x32-bit</title>
|
<title>Installation of Ncurses - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -74,8 +74,9 @@ cp -vfr doc/* /usr/share/doc/openssl-&openssl-version;</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<!-- ~~~~~ 32-bit ~~~~~ -->
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
<sect2 arch="multilib" role="installation">
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of OpenSSL - 32-bit</title>
|
<title>Installation of OpenSSL - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -106,8 +107,9 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<!-- ~~~~~ x32-bit ~~~~~ -->
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
<sect2 arch="multilib" role="installation">
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of OpenSSL - x32-bit</title>
|
<title>Installation of OpenSSL - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -92,7 +92,9 @@ ln -sfv ../../lib/$(readlink /usr/lib/libhistory.so ) /usr/lib/libhistory.so</us
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Readline - 32-bit</title>
|
<title>Installation of Readline - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -119,7 +121,9 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Readline - x32-bit</title>
|
<title>Installation of Readline - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -62,9 +62,10 @@ rm -f /usr/lib/libz.a</userinput></screen>
|
|||||||
files and generally unneeded on a linux system. None of these are necessary
|
files and generally unneeded on a linux system. None of these are necessary
|
||||||
at this point. To remove them, run:</para>
|
at this point. To remove them, run:</para>
|
||||||
|
|
||||||
<screen arch="default"><userinput>find /usr/lib /usr/libexec -name \*.la -delete</userinput></screen>
|
<screen arch="default"><userinput>find /usr/lib /usr/libexec -name \*.la -delete</userinput></screen>
|
||||||
|
<screen arch="ml_32"><userinput>find /usr/lib{,32} /usr/libexec -name \*.la -delete</userinput></screen>
|
||||||
<screen arch="multilib"><userinput>find /usr/lib{,{,x}32} /usr/libexec -name \*.la -delete</userinput></screen>
|
<screen arch="ml_x32"><userinput>find /usr/lib{,x32} /usr/libexec -name \*.la -delete</userinput></screen>
|
||||||
|
<screen arch="ml_all"><userinput>find /usr/lib{,{,x}32} /usr/libexec -name \*.la -delete</userinput></screen>
|
||||||
|
|
||||||
<para>For more information about libtool archive files, see the <ulink
|
<para>For more information about libtool archive files, see the <ulink
|
||||||
url="&blfs-book;/introduction/la-files.html">BLFS section "About Libtool
|
url="&blfs-book;/introduction/la-files.html">BLFS section "About Libtool
|
||||||
|
@ -56,7 +56,7 @@ done
|
|||||||
|
|
||||||
unset LIB save_lib save_usrlib</userinput></screen>
|
unset LIB save_lib save_usrlib</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput>save_lib="ld-&glibc-version;.so libc-&glibc-version;.so libpthread-&glibc-version;.so libthread_db-&libthread_db-version;.so"
|
<screen arch="ml_32,ml_x32,ml_all"><userinput>save_lib="ld-&glibc-version;.so libc-&glibc-version;.so libpthread-&glibc-version;.so libthread_db-&libthread_db-version;.so"
|
||||||
|
|
||||||
cd /lib
|
cd /lib
|
||||||
|
|
||||||
@ -113,7 +113,7 @@ unset LIB save_lib save_usrlib</userinput></screen>
|
|||||||
/tools/bin/find /{bin,sbin} /usr/{bin,sbin,libexec} -type f \
|
/tools/bin/find /{bin,sbin} /usr/{bin,sbin,libexec} -type f \
|
||||||
-exec /tools/bin/strip --strip-all {} ';'</userinput></screen>
|
-exec /tools/bin/strip --strip-all {} ';'</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib"><userinput>/tools/bin/find /usr/lib{,{,x}32} -type f -name \*.a \
|
<screen arch="ml_32,ml_x32,ml_all"><userinput>/tools/bin/find /usr/lib{,{,x}32} -type f -name \*.a \
|
||||||
-exec /tools/bin/strip --strip-debug {} ';'
|
-exec /tools/bin/strip --strip-debug {} ';'
|
||||||
|
|
||||||
/tools/bin/find /lib /usr/lib{,{,x}32} -type f \( -name \*.so* -a ! -name \*dbg \) \
|
/tools/bin/find /lib /usr/lib{,{,x}32} -type f \( -name \*.so* -a ! -name \*dbg \) \
|
||||||
|
@ -212,7 +212,7 @@ chmod 755 /lib/systemd/systemd-user-sessions</userinput></screen>
|
|||||||
|
|
||||||
<!-- ====== 32-bit ===== -->
|
<!-- ====== 32-bit ===== -->
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of systemd - 32-bit</title>
|
<title>Installation of systemd - 32-bit</title>
|
||||||
|
|
||||||
<para>If still in the build directory, step out:</para>
|
<para>If still in the build directory, step out:</para>
|
||||||
@ -280,7 +280,7 @@ rm -f /usr/bin/xsltproc</userinput></screen>
|
|||||||
|
|
||||||
<!-- ====== x32-bit ===== -->
|
<!-- ====== x32-bit ===== -->
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of systemd - x32-bit</title>
|
<title>Installation of systemd - x32-bit</title>
|
||||||
|
|
||||||
<para>If still in the build directory, step out:</para>
|
<para>If still in the build directory, step out:</para>
|
||||||
|
@ -52,7 +52,6 @@
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<!-- ~~~~~~~~~~~~~~~~~~~~~ default ABI ~~~~~~~~~~~~~~~~~~~~~ -->
|
|
||||||
<sect2 role="installation">
|
<sect2 role="installation">
|
||||||
<title>Installation of Util-linux</title>
|
<title>Installation of Util-linux</title>
|
||||||
<!--
|
<!--
|
||||||
@ -122,8 +121,9 @@ su nobody -s /bin/bash -c "PATH=$PATH make -k check"</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<!-- ~~~~~~~~~~~~~~~~~~~~~ ABI 32-bit ~~~~~~~~~~~~~~~~~~~~~ -->
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
<sect2 arch="multilib" role="installation">
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Util-linux - 32-bit</title>
|
<title>Installation of Util-linux - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -178,8 +178,9 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<!-- ~~~~~~~~~~~~~~~~~~~~~ ABI x32-bit ~~~~~~~~~~~~~~~~~~~~~ -->
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
<sect2 arch="multilib" role="installation">
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Util-linux - x32-bit</title>
|
<title>Installation of Util-linux - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -68,7 +68,9 @@ ln -svf ../../lib/$(readlink /usr/lib/liblzma.so) /usr/lib/liblzma.so</userinput
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Xz - 32-bit</title>
|
<title>Installation of Xz - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -95,7 +97,9 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Xz - x32-bit</title>
|
<title>Installation of Xz - x32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
|
@ -67,7 +67,9 @@ ln -sfv ../../lib/$(readlink /usr/lib/libz.so) /usr/lib/libz.so</userinput></scr
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI 32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_32,ml_all" role="installation">
|
||||||
<title>Installation of Zlib - 32-bit</title>
|
<title>Installation of Zlib - 32-bit</title>
|
||||||
|
|
||||||
<para>Clean previous build:</para>
|
<para>Clean previous build:</para>
|
||||||
@ -93,7 +95,9 @@ rm -rf DESTDIR</userinput></screen>
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2 arch="multilib" role="installation">
|
<!-- ~~~~~~~~~~~~~~~~~~~~ ABI x32 ~~~~~~~~~~~~~~~~~~~~ -->
|
||||||
|
|
||||||
|
<sect2 arch="ml_x32,ml_all" role="installation">
|
||||||
<title>Installation of Zlib - x32-bit</title>
|
<title>Installation of Zlib - x32-bit</title>
|
||||||
|
|
||||||
<screen><userinput remap="pre">make distclean</userinput></screen>
|
<screen><userinput remap="pre">make distclean</userinput></screen>
|
||||||
|
@ -165,7 +165,7 @@ menuentry "GNU/Linux, Linux &linux-version;-lfs-&versiond;" {
|
|||||||
}</literal>
|
}</literal>
|
||||||
EOF</userinput></screen>
|
EOF</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib" revision="sysv"><userinput>cat > /boot/grub/grub.cfg << "EOF"
|
<screen arch="ml_32,ml_x32,ml_all" revision="sysv"><userinput>cat > /boot/grub/grub.cfg << "EOF"
|
||||||
<literal># Begin /boot/grub/grub.cfg
|
<literal># Begin /boot/grub/grub.cfg
|
||||||
set default=0
|
set default=0
|
||||||
set timeout=5
|
set timeout=5
|
||||||
@ -178,7 +178,7 @@ menuentry "GNU/Linux, Linux &linux-version;-lfs-&version;-multilib" {
|
|||||||
}</literal>
|
}</literal>
|
||||||
EOF</userinput></screen>
|
EOF</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib" revision="systemd"><userinput>cat > /boot/grub/grub.cfg << "EOF"
|
<screen arch="ml_32,ml_x32,ml_all" revision="systemd"><userinput>cat > /boot/grub/grub.cfg << "EOF"
|
||||||
<literal># Begin /boot/grub/grub.cfg
|
<literal># Begin /boot/grub/grub.cfg
|
||||||
set default=0
|
set default=0
|
||||||
set timeout=5
|
set timeout=5
|
||||||
|
@ -237,11 +237,11 @@ Kernel hacking --->
|
|||||||
|
|
||||||
<screen arch="default" revision="sysv"><userinput remap="install">cp -iv arch/x86/boot/bzImage /boot/vmlinuz-&linux-version;-lfs-&version;</userinput></screen>
|
<screen arch="default" revision="sysv"><userinput remap="install">cp -iv arch/x86/boot/bzImage /boot/vmlinuz-&linux-version;-lfs-&version;</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib" revision="sysv"><userinput remap="install">cp -iv arch/x86/boot/bzImage /boot/vmlinuz-&linux-version;-lfs-&version;-multilib</userinput></screen>
|
<screen arch="ml_32,ml_x32,ml_all" revision="sysv"><userinput remap="install">cp -iv arch/x86/boot/bzImage /boot/vmlinuz-&linux-version;-lfs-&version;-multilib</userinput></screen>
|
||||||
|
|
||||||
<screen arch="default" revision="systemd"><userinput remap="install">cp -iv arch/x86/boot/bzImage /boot/vmlinuz-&linux-version;-lfs-&versiond;</userinput></screen>
|
<screen arch="default" revision="systemd"><userinput remap="install">cp -iv arch/x86/boot/bzImage /boot/vmlinuz-&linux-version;-lfs-&versiond;</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib" revision="systemd"><userinput remap="install">cp -iv arch/x86/boot/bzImage /boot/vmlinuz-&linux-version;-lfs-&versiond;-multilib</userinput></screen>
|
<screen arch="ml_32,ml_x32,ml_all" revision="systemd"><userinput remap="install">cp -iv arch/x86/boot/bzImage /boot/vmlinuz-&linux-version;-lfs-&versiond;-multilib</userinput></screen>
|
||||||
|
|
||||||
|
|
||||||
<para><filename>System.map</filename> is a symbol file for the kernel.
|
<para><filename>System.map</filename> is a symbol file for the kernel.
|
||||||
@ -353,8 +353,8 @@ EOF</userinput></screen>
|
|||||||
<seg>config-&linux-version;,
|
<seg>config-&linux-version;,
|
||||||
<phrase arch="default" revision="sysv">vmlinuz-&linux-version;-lfs-&version;,</phrase>
|
<phrase arch="default" revision="sysv">vmlinuz-&linux-version;-lfs-&version;,</phrase>
|
||||||
<phrase arch="default" revision="systemd">vmlinuz-&linux-version;-lfs-&versiond;,</phrase>
|
<phrase arch="default" revision="systemd">vmlinuz-&linux-version;-lfs-&versiond;,</phrase>
|
||||||
<phrase arch="multilib" revision="sysv">vmlinuz-&linux-version;-lfs-&version;-multilib,</phrase>
|
<phrase arch="ml_32,ml_x32,ml_all" revision="sysv">vmlinuz-&linux-version;-lfs-&version;-multilib,</phrase>
|
||||||
<phrase arch="multilib" revision="systemd">vmlinuz-&linux-version;-lfs-&versiond;-multilib,</phrase>
|
<phrase arch="ml_32,ml_x32,ml_all" revision="systemd">vmlinuz-&linux-version;-lfs-&versiond;-multilib,</phrase>
|
||||||
and System.map-&linux-version;</seg>
|
and System.map-&linux-version;</seg>
|
||||||
<seg>/lib/modules, /usr/share/doc/linux-&linux-version;</seg>
|
<seg>/lib/modules, /usr/share/doc/linux-&linux-version;</seg>
|
||||||
</seglistitem>
|
</seglistitem>
|
||||||
|
@ -36,7 +36,7 @@ PRETTY_NAME="Linux From Scratch &versiond;"
|
|||||||
VERSION_CODENAME="<your name here>"
|
VERSION_CODENAME="<your name here>"
|
||||||
EOF</userinput></screen>
|
EOF</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib" revision="systemd"><userinput>cat > /etc/os-release << "EOF"
|
<screen arch="ml_32,ml_x32,ml_all" revision="systemd"><userinput>cat > /etc/os-release << "EOF"
|
||||||
NAME="Linux From Scratch"
|
NAME="Linux From Scratch"
|
||||||
VERSION="&versiond;"
|
VERSION="&versiond;"
|
||||||
ID=lfs
|
ID=lfs
|
||||||
@ -51,7 +51,7 @@ EOF</userinput></screen>
|
|||||||
running:</para>
|
running:</para>
|
||||||
|
|
||||||
<screen arch="default" revision="sysv"><userinput>echo &version; > /etc/lfs-release</userinput></screen>
|
<screen arch="default" revision="sysv"><userinput>echo &version; > /etc/lfs-release</userinput></screen>
|
||||||
<screen arch="multilib" revision="sysv"><userinput>echo &version;-multilib > /etc/lfs-release</userinput></screen>
|
<screen arch="ml_32,ml_x32,ml_all" revision="sysv"><userinput>echo &version;-multilib > /etc/lfs-release</userinput></screen>
|
||||||
|
|
||||||
<para revision="systemd">Creating the file
|
<para revision="systemd">Creating the file
|
||||||
<filename>/etc/lfs-release</filename> is recommended for compatibility with
|
<filename>/etc/lfs-release</filename> is recommended for compatibility with
|
||||||
@ -79,14 +79,14 @@ DISTRIB_CODENAME="<your name here>"
|
|||||||
DISTRIB_DESCRIPTION="Linux From Scratch"
|
DISTRIB_DESCRIPTION="Linux From Scratch"
|
||||||
EOF</userinput></screen>
|
EOF</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib" revision="sysv"><userinput>cat > /etc/lsb-release << "EOF"
|
<screen arch="ml_32,ml_x32,ml_all" revision="sysv"><userinput>cat > /etc/lsb-release << "EOF"
|
||||||
DISTRIB_ID="Linux From Scratch"
|
DISTRIB_ID="Linux From Scratch"
|
||||||
DISTRIB_RELEASE="&version;-multilib"
|
DISTRIB_RELEASE="&version;-multilib"
|
||||||
DISTRIB_CODENAME="<your name here>"
|
DISTRIB_CODENAME="<your name here>"
|
||||||
DISTRIB_DESCRIPTION="Linux From Scratch"
|
DISTRIB_DESCRIPTION="Linux From Scratch"
|
||||||
EOF</userinput></screen>
|
EOF</userinput></screen>
|
||||||
|
|
||||||
<screen arch="multilib" revision="systemd"><userinput>cat > /etc/lsb-release << "EOF"
|
<screen arch="ml_32,ml_x32,ml_all" revision="systemd"><userinput>cat > /etc/lsb-release << "EOF"
|
||||||
DISTRIB_ID="Linux From Scratch"
|
DISTRIB_ID="Linux From Scratch"
|
||||||
DISTRIB_RELEASE="&versiond;-multilib"
|
DISTRIB_RELEASE="&versiond;-multilib"
|
||||||
DISTRIB_CODENAME="<your name here>"
|
DISTRIB_CODENAME="<your name here>"
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
<title>Linux From Scratch</title>
|
<title>Linux From Scratch</title>
|
||||||
<subtitle arch="default" revision='sysv'>Version &version;</subtitle>
|
<subtitle arch="default" revision='sysv'>Version &version;</subtitle>
|
||||||
<subtitle arch="default" revision='systemd'>Version &versiond;</subtitle>
|
<subtitle arch="default" revision='systemd'>Version &versiond;</subtitle>
|
||||||
<subtitle arch="multilib" revision='sysv'>Version &version;-multilib</subtitle>
|
<subtitle arch="ml_32,ml_x32,ml_all" revision='sysv'>Version &version;-multilib</subtitle>
|
||||||
<subtitle arch="multilib" revision='systemd'>Version &versiond;-multilib</subtitle>
|
<subtitle arch="ml_32,ml_x32,ml_all" revision='systemd'>Version &versiond;-multilib</subtitle>
|
||||||
|
|
||||||
<authorgroup>
|
<authorgroup>
|
||||||
<author>
|
<author>
|
||||||
@ -32,7 +32,7 @@
|
|||||||
<surname>Lucas</surname>
|
<surname>Lucas</surname>
|
||||||
</author>
|
</author>
|
||||||
|
|
||||||
<author arch="multilib">
|
<author arch="ml_32,ml_x32,ml_all">
|
||||||
<firstname>Editor: Thomas</firstname>
|
<firstname>Editor: Thomas</firstname>
|
||||||
<surname>Trepl</surname>
|
<surname>Trepl</surname>
|
||||||
</author>
|
</author>
|
||||||
|
@ -5,12 +5,12 @@
|
|||||||
%general-entities;
|
%general-entities;
|
||||||
]>
|
]>
|
||||||
|
|
||||||
<sect1 arch="multilib" id="pre-multilib">
|
<sect1 arch="ml_32,ml_x32,ml_all" id="pre-multilib">
|
||||||
<?dbhtml filename="multilib.html"?>
|
<?dbhtml filename="multilib.html"?>
|
||||||
|
|
||||||
<title>About the Multilib Edition</title>
|
<title>About the Multilib Edition</title>
|
||||||
|
|
||||||
<sect2><title>What is 'multilib'</title>
|
<sect2><title>What is Multilib</title>
|
||||||
|
|
||||||
<para>Today, most systems in the x86 world have a word size of 64
|
<para>Today, most systems in the x86 world have a word size of 64
|
||||||
bit. The word size is a number of bits which can be used at once
|
bit. The word size is a number of bits which can be used at once
|
||||||
@ -28,7 +28,7 @@
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2><title>Why doing multilib?</title>
|
<sect2><title>Why doing Multilib?</title>
|
||||||
|
|
||||||
<para>From a educational point of view, LFS in its 'native' form is
|
<para>From a educational point of view, LFS in its 'native' form is
|
||||||
probably the best way to see how a Linux system is built from source.
|
probably the best way to see how a Linux system is built from source.
|
||||||
@ -54,7 +54,7 @@
|
|||||||
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>This multilib edition of LFS goes a small step beyond and a
|
<para>The multilib edition of LFS goes a small step beyond and a
|
||||||
small step back to what has been said in the previous section
|
small step back to what has been said in the previous section
|
||||||
when talking about target architectures. On one hand, the multilib
|
when talking about target architectures. On one hand, the multilib
|
||||||
edition is focused and <emphasis>limited</emphasis> to x86_64
|
edition is focused and <emphasis>limited</emphasis> to x86_64
|
||||||
@ -71,16 +71,16 @@
|
|||||||
|
|
||||||
</sect2>
|
</sect2>
|
||||||
|
|
||||||
<sect2><title>Building a multilib system</title>
|
<sect2><title>Building a Multilib System</title>
|
||||||
|
|
||||||
<para>Building a multilib system is not that much different from
|
<para>Building a multilib system is not that much different from
|
||||||
building a system by using the 'native' LFS book. Beside some
|
building a system by using the 'native' LFS book. Beside some
|
||||||
tweaks here and there the most prominent difference is that
|
tweaks here and there the most prominent difference is that
|
||||||
multilib requires compiling many applications three times:
|
multilib requires compiling some applications up to three times:
|
||||||
one for the primary 64-bit architecture,
|
one for the primary 64-bit architecture,
|
||||||
one for the minor 32-bit architecture (m32),
|
one for the 32-bit architecture (m32),
|
||||||
and once again for the 32-bit architecture with 64-bit memory
|
and once again for the 32-bit architecture with is 32-bit memory
|
||||||
extensions (mx32).</para>
|
access and 64 bit instruction set (mx32).</para>
|
||||||
|
|
||||||
<para>Continue only if you and your system meets the following
|
<para>Continue only if you and your system meets the following
|
||||||
requirements:
|
requirements:
|
||||||
|
Loading…
Reference in New Issue
Block a user