在较旧的发行版中存在ia32-libs
meta 软件包,现在 Debian 和 Ubuntu 都切换到了multilib
.我想知道有什么区别以及我应该如何在 64 位发行版下重新创建 32 位环境。
答案1
如果我理解你的问题,你会问如何在 64 位系统下安装 32 位软件包。如果这确实是您的问题,那么我相信您所要做的就是安装与系统架构相关的必要软件包。
大多数软件包在两种架构中都可用,例如:
$ 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)
因此,您需要安装特定库所需的库+标头(-dev)。这需要安装lib32..
和lib64..
软件包。
我的位宽是多少
您可以使用以下命令确认您的硬件位数:
$ getconf LONG_BIT
64
你的操作系统位数使用这个:
$ uname -m
x86_64
请参阅此 U&L Q&A,其中我解释了可用于在各种 Linux 上执行此操作的所有方法,标题为:Linux 上的 32 位、64 位 CPU 操作模式。
设置构建环境
看一下 Ubuntu 网站上的这篇文章,其中讨论了如何设置环境以在主架构上构建不同架构的详细信息。该主题的标题是:InstallingCompilers - 安装 GNU C 编译器和 GNU C++ 编译器。