多库如何工作?

多库如何工作?

在较旧的发行版中存在ia32-libsmeta 软件包,现在 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++ 编译器

相关内容