rpm升级其他程序使用的共享对象

时间:2014-07-11 06:10:23

标签: shared-libraries rpm

我正在生成具有程序P-A.1.1的rpm-A,以及两个库L-A.1.1和L-B.1.1。 与之前的版本相比,L-A.1.1更改了一些用于公开的API - L-A.1.0

假设机器有另一个使用L-A.1.0的程序P-B.1.0。

是否会安装rpm-A中断程序P-B.1.0?

L-A.1.1会与L-A.1.0共存吗?

A

1 个答案:

答案 0 :(得分:1)

如果要升级之前提供的包P-A.1.0,并且新版本的软件包不再提供该版本的库,并且仅提供库的P-A.1.1版本,则RPM不会允许升级发生而不会被强制,因为它会中断P-B.1.0

你有很多选择来处理这类事情。

  1. 您可以在同一个包中提供这两个库。
  2. 您可以更改包名称(例如gnupggnupg2iptables / iptables-ipv6,尽管这些原因与此略有不同)。
  3. 您可以使用库符号版本控制让您的库同时公开这两个API(我相信)。