yum如何比较版本?

时间:2010-06-08 09:53:23

标签: comparison versioning yum fedora10

我们将一个Web应用程序打包到RPM中。 我们对RPM的版本字段有疑问。

假设我们安装了rpm:foo-2.1.0.007

007是我们的内部版本号。

现在当我们尝试安装更新的rpm,foo-2.1.0.010时,yum说“没有什么可以更新”。

当我重新制作RPM但删除了前导零时,问题就解决了:

FOO-2.1.0.7

FOO-2.1.0.10

根据this link,版本的每个部分都会被比较为一个整数,但实践表明不是这样。

所以我的问题是:什么是RPM的版本比较算法以及为什么前导零干扰?

1 个答案:

答案 0 :(得分:17)

百胜只是要求rpm来比较它们。您可以安装rpmdevtools,然后使用:

% rpmdev-vercmp foo-2.1.0.010 foo-2.1.0.007
0:foo-2.1.0.010 is newer

......这是你所期望的。除非你在007套餐中有一个时代,否则我不确定你为什么会得到不同的答案。你有什么版本的rpm? vercmp对你说了什么?