来自http://rpm5.org/docs/api/dependencies.html,强调我的
RPM用于确定包的版本顺序的算法很简单,鼓励开发人员不要依赖其工作的细节.开发人员应保持其编号方案简单,以便任何合理的排序算法都能正常工作.版本比较算法在例程rpmvercmp()中,它只是一个分段的strcmp(3).首先,使用isdigit(3)/ isalpha(3)找到段的边界.然后按顺序比较每个段,最右边的段是最不重要的.使用词汇图形ascii排序比较字母部分,数字段剥离前导零并在执行strcmp之前比较strlen.如果两个数字字符串相等,则较长的字符串较大.请注意,算法不知道小数部分,并且perl-5.6比perl-5.00503"更旧",因为数字6小于数字503.
在这种情况下,版本将转换为元组(1,3,'ii')和(1,1).第一个元素是相等的,所以第二个元素与3> 1比较,因此1.03ii被认为比1.1更新
| 归档时间: |
|
| 查看次数: |
159 次 |
| 最近记录: |