首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >yum更新不将依赖项更新为所需的最低版本。

yum更新不将依赖项更新为所需的最低版本。
EN

Stack Overflow用户
提问于 2014-05-21 14:36:41
回答 1查看 1K关注 0票数 3

我们有两个RPM包,都是内部开发的:

  • wm-计费-scrooge和
  • wm-原木托运人

包装wm-帐单.scrooge要求wm-日志-托运人

代码语言:javascript
复制
require: wm-log-shipper (in *wm-billing-scrooge* spec file)

现在,我们修复了wm-日志发货人的一个问题,并希望确保每当我们在机器上更新wm-帐单-scrooge时,我们也将更新wm-日志寄件人,使其至少达到所需的版本。因此,我们将“要求”子句更改为

代码语言:javascript
复制
require: wm-log-shipper >= 4.50.0

现在,我的期望是,每当我做一个

代码语言:javascript
复制
yum update wm-billing-scrooge

在一台旧(呃)版本的wm-log托运人安装的机器上,yum将

  • 请注意,要安装的wm计费-scrooge版本取决于比已安装的wm-log-托运人版本更新的wm-log-托运人版本,并且
  • 还将更新wm-日志寄件人。

这种期望是正确的吗?

如果这种预期是正确的,那么在我们的案例中,yum未能升级wm-log发货人的原因可能是什么?

这里有一个shell会话,希望它能说明这个问题:

代码语言:javascript
复制
devwulf-smsplus-billing1:~# yum list installed wm-log-shipper
Loaded plugins: security
office-wm-software-development                                                                                                                                                           | 2.7 kB     00:00     
office-wm-software-development/primary_db                                                                                                                                                | 890 kB     00:00     
wm-software                                                                                                                                                                              | 2.7 kB     00:00     
wm-software/primary_db                                                                                                                                                                   | 890 kB     00:00     
Installed Packages
wm-log-shipper.x86_64                                                       4.46.0-INTEGRATION_S46_SNAPSHOT20140128084356                                                        @office-wm-software-development
devwulf-smsplus-billing1:~# repoquery --requires wm-billing-scrooge
/bin/sh
jpackage-utils
runtime-env-init-functions
wm-log-shipper >= 4.50.0
devwulf-smsplus-billing1:~# yum list installed wm-log-shipper
Loaded plugins: security
office-wm-software-development                                                                                                                                                           | 2.7 kB     00:00     
wm-software                                                                                                                                                                              | 2.7 kB     00:00     
Installed Packages
wm-log-shipper.x86_64                                                       4.46.0-INTEGRATION_S46_SNAPSHOT20140128084356                                                        @office-wm-software-development
devwulf-smsplus-billing1:~# rpmdev-vercmp 4.50.0 4.46.0-INTEGRATION_S46_SNAPSHOT20140128084356
0:4.50.0-None is newer
devwulf-smsplus-billing1:~# yum update -d 10 wm-billing-scrooge
Loading "security" plugin
Running "config" handler for "security" plugin
Config time: 0.037
Yum Version: 3.2.29
COMMAND: yum update -d 10 wm-billing-scrooge 
Installroot: /
Ext Commands:

   wm-billing-scrooge
Setting up Package Sacks
office-wm-software-development
wm-software                                                                                                                                                                              | 2.7 kB     00:00     
Running "exclude" handler for "security" plugin
pkgsack time: 0.340
Reading Local RPMDB
rpmdb time: 0.001
Setting up Update Process
Building updates object
up:Obs Init time: 0.263
putting perl-version in simple update
....
processing nss-util
up:simple updates time: 0.033
up:obs time: 0.005
up:condense time: 0.000
updates time: 0.632
Not Updating Package that is already updated: wm-billing-scrooge.x86_64 0:4.54.0-SNAPSHOT20140519150818
Not Updating Package that is already updated: wm-billing-scrooge.x86_64 0:4.54.0-SNAPSHOT20140519150818
Resolving Dependencies
Running "preresolve" handler for "security" plugin
--> Running transaction check
---> Package wm-billing-scrooge.x86_64 0:4.54.0-SNAPSHOT20140519150818 will be updated
Checking deps for wm-billing-scrooge.x86_64 0:4.54.0-SNAPSHOT20140519150818 - ud
---> Package wm-billing-scrooge.x86_64 0:4.54.0-SNAPSHOT20140521105707 will be an update
Checking deps for wm-billing-scrooge.x86_64 0:4.54.0-SNAPSHOT20140521105707 - u
looking for ('wm-log-shipper', 'GE', ('0', '4.50.0', None)) as a requirement of wm-billing-scrooge.x86_64 0:4.54.0-SNAPSHOT20140521105707 - u
--> Finished Dependency Resolution
Dependency Process ending
Depsolve time: 0.815

Dependencies Resolved

================================================================================================================================================================================================================
 Package                                        Arch                               Version                                                     Repository                                                  Size
================================================================================================================================================================================================================
Updating:
 wm-billing-scrooge                             x86_64                             4.54.0-SNAPSHOT20140521105707                               office-wm-software-development                              21 M

Transaction Summary
================================================================================================================================================================================================================
Upgrade       1 Package(s)

Total download size: 21 M
Is this ok [y/N]: N
Exiting on user Command
devwulf-smsplus-billing1:~#

有什么想法吗?

特克斯岛

EN

回答 1

Stack Overflow用户

发布于 2014-05-23 13:53:51

代码语言:javascript
复制
require: wm-log-shipper >= 4.50.0

是错的。

它应改为:

代码语言:javascript
复制
Requires: wm-log-shipper >= 4.50.0

根据您正在运行的rpmbuild版本,可能需要以下内容:

代码语言:javascript
复制
AutoReq:        no

较新版本的rpmbuild自动计算需求。当没有"Autoreq: no“标志运行时,您应该注意rpm在rpmbuild输出中的要求。然后用手将它们添加到“必需的:”标志中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23786391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档