glfs/multilib/whatisml.xml

65 lines
1.8 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY % general-entities SYSTEM "../general.ent">
%general-entities;
]>
<sect1 id="whatisml" xreflabel="What is Multilib?">
<?dbhtml filename="whatisml.html"?>
<title>What is Multilib?</title>
<para>
Multilib is essentially the ability to at least execute software
that was built for another architecture different from your own.
For example, and most common: the user has a x86_64 CPU that is
wanting to execute software built to run on a x86 CPU. To better
establish terms, x86_64 is 64-bit and amd64, whereas x86 is
32-bit and ix86 where <option>x</option> can vary from 3 to 6
usually.
</para>
<sect2>
<title>How Does it Work?</title>
<para>
Multilib can be achieved firstmost by having the hardware
capable of x86 emulation, then having libraries built for x86.
We will get into how to compile x86 libraries and software and
their execution later, but know the general process for LFS
and BLFS is to almost always compile software and that's what
we'll be doing.
</para>
<note>
<para>
It is worth nothing that when covering multilib, we mean
emulation of 32-bit software on a 64-bit CPU and this
is the case for most users nowadays, but the future is heading
towards ARM64 slowly. We will not be covering ARM at this time.
</para>
</note>
</sect2>
<sect2>
<title>Am I Capable of Multilib?</title>
<para>
If you are on a 32-bit CPU, you are not capable of multilib.
If you are on a 64-bit CPU, and are capable of 32-bit emulation,
then you are capable of multilib.
</para>
<para>
Run <command>uname -m</command> to find out if you are on a
capable CPU.
</para>
</sect2>
</sect1>