管理不同版本的Ubuntu的共享库

时间:2016-03-30 14:50:49

标签: linux shared-libraries

我们构建一个依赖libsdl-gfx的共享库。

在Ubuntu 12.04到14.10上,libSDL_gfx.so.13已链接;在Ubuntu 15.04 15.10 libSDL_gfx更新为libSDL_gfx.so.15

为了使其工作,我们需要构建另一个版本的共享库,它依赖于libSDL_gfx.so.15

所以问题是这种情况的正确方法是什么?是否可以只构建我的库,可以在 Ubuntu 12 Ubuntu 15 上使用?谢谢。

LJ

1 个答案:

答案 0 :(得分:0)

  

所以问题是这种情况的正确方法是什么?

您正在做的事情:构建两个版本的库。

  

是否可以只构建一次可以在Ubuntu 12和Ubuntu 15上使用的库?

没有。假设libSDL_gfx.so开发人员胜任,他们有一个原因更改了库的外部版本:ABI更改。如果您尝试将库与libSDL_gfx的ABI不兼容版本一起使用,则会导致崩溃(或者更糟糕的是 - 细微的内存损坏)。了解外部库版本控制here