我可以在 Linux、*BSD 和 Illumos 上使用相同的二进制文件吗?

我可以在 Linux、*BSD 和 Illumos 上使用相同的二进制文件吗?

我想知道,我是否可以在三个系统上使用不加修改的程序的二进制文件?毕竟他们都是Unice。我谈论的是相同的架构。

答案1

不,你不能,因为ABI不同。一些 BSD 确实与 Linux 二进制文件具有二进制兼容性,但有一些警告(启用虚拟8086模式是一个常见问题)。然而,通常您可能需要修补源代码,因为许多二进制文件会根据源代码是为 Linux 开发的事实对其环境做出假设。据我所知,目前 Linux 内核中还没有 BSD 二进制兼容性。

安德烈·索科洛夫是致力于提供 Linux 二进制支持在没有区域的 Illumos 上,但据我所知,目前计划在 Illumos 上没有 BSD 二进制兼容性。

相关内容