In older distributions there was the ia32-libs
meta package, now both Debian and Ubuntu switched to multilib
. I wonder what the differences are and what I'm supposed to do to re-create a 32 bit environment under a 64 bit distribution.
1 Answer
If I understand your question you're asking how one would go about installing 32-bit packages under a 64-bit system. If this is indeed your question then I believe all one has to do is install the necessary packages that correlate to the architecture of the system.
Most packages are available in both architectures, for example:
$ apt-cache search "lib(32|64)"|grep ffi
lib32ffi-dev - Foreign Function Interface library (development files, 32bit)
lib32ffi6 - Foreign Function Interface library runtime (32bit)
lib64ffi-dev - Foreign Function Interface library (development files, 64bit)
lib64ffi6 - Foreign Function Interface library runtime (64bit)
So you'd need to install the library + headers (-dev) you want for a particular library. This would entail installing the lib32..
and lib64..
packages.
What's my bit width
You can confirm your hardware bitness using this command:
$ getconf LONG_BIT
64
And you're OSes bitness using this:
$ uname -m
x86_64
See this U&L Q&A where I explain all the methods you can use to do this on various Linuxes, titled: 32-bit, 64-bit CPU op-mode on Linux.
Setting up the build environment
Take a look at this article on the Ubuntu website which discusses the gory details of how to setup ones environment for building for different architectures on your main architecture. The topic is titled: InstallingCompilers - Installing the GNU C compiler and GNU C++ compiler.
-
not really, and sorry if I wasn't explaining myself correctly, but I mean, what does this changes for the package manager and the user that wants to install software ? I need to do
package:i686
for the 32 bit version ? Commented Nov 24, 2013 at 6:54 -