并排安装RPM的不同版本

3
如果可能的话,有没有一种“正确”的方法可以设计RPM,以便通过YUM/RPM可以同时安装多个版本而不会互相干扰?对于库文件而言,正确的答案似乎与sonames有关,尽管我找不到任何关于sonames、符号链接和RPM如何交互的好信息。我完全不知道可执行文件和普通文件应该如何命名/放置,以便它们可以并排放置。就可执行文件而言,更好的做法似乎是将新版本添加到PATH中,但是如果卸载了新版本的RPM,则应将旧版本添加到PATH中。
1个回答

3

基本上,您需要确保版本不冲突:

  • 要求/冲突部分不能有冲突的要求
  • 每个文件名只能存在一个版本 - 除非它们完全相同
  • 如果您有脚本(%post等),则必须协作

请注意,使用yum安装多个版本会遇到问题,因为yum设计为一次只安装一个版本 - 除了内核。如果您使用yum安装/更新软件包,则所有旧版本都将被删除。因此,您需要对每个版本使用rpm -i。

关于在路径中拥有更新的二进制文件,这是不可能做到的。您可以像Python一样在命令行上指定python或python3,或者在路径上创建符号链接以获取所需的二进制文件。这需要在脚本中完成,并且管理起来相当具有挑战性。这也意味着符号链接不属于任何软件包。


很遗憾,答案似乎是无法以任何有用的方式完成。 :-( - tgoodhart
我认为如果你尝试在备用根目录上安装rpm可能会有帮助。 - shahjapan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接