0

所以我觉得我应该知道这一点,但我不知道......

对于 Linux 上的共享库 (.so)。我的理解是,只要 CPU 架构保持不变,那些应该可以在发行版之间移植,对吗?

例如,如果我有一个 x86_64 Fedora 并且我从它复制了一个 .so 文件到一个 x86_64 Ubuntu,那么 .so 应该可以正常工作吗?

现在我相信这是假设:

A) .so 对新机器上的其他 .sos 没有未实现的依赖关系。B) .so 不依赖于与新机器不同的版本 .so

但是假设我有我的 libisprime.so 共享对象,它有一个计算素数的函数。这个 .so 不依赖于其他任何东西。我在一个发行版上编译它。我不应该能够在任何具有相同架构的发行版上使用它吗?

4

1 回答 1

2

它们只是 ELF 文件。因此,只要您所做的依赖假设是正确的,我看不出它们不能跨系统工作的任何原因。

不过,最好的判断方法是安装一些虚拟机并尝试一下!

于 2013-01-17T05:35:25.087 回答