适用于 amd64 机器的 i386 deb 包

适用于 amd64 机器的 i386 deb 包

我正在构建一个应用程序,我想构建一个 DEB 包,但是我遇到了一个问题......

我希望 DEB 包可以安装在 32 位和 64 位机器上。然后我构建了一个 32 位包来支持这两种架构,但我遇到了依赖关系问题,当 32 位系统安装包时,运行良好,但当 64 位系统安装包时,要安装的依赖关系(共享库)应该是 32 位的(可在 64 位存储库上使用)。

我怎样才能做到这一点?

答案1

这里给出一个快速答案:https://help.ubuntu.com/community/32bit_and_64bit#How_to_Make_32-bit_Applications_Work_on_a_64-bit_Operating_System

安装ia32-libs无疑是最快的解决方案,但根据具体情况,它可能还不够。

答案2

使用多架构,这很容易。只需构建一个 i386 deb。在 amd64 机器上(如果所有依赖项已在 Ubuntu 中多架构),将安装它们的 32 位版本。

答案3

在 64 位安装中,应该有一个适用于 i386 存储库的 apt 条目,在这种情况下,您可以使用packagename:i386依赖项,而不是packagename。例如,wine,您需要 32 位和 64 位库来运行所有 Windows 应用程序。

相关内容