[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: rpm gets some deps wrong?



On Wed, Aug 06, 2003 at 07:10:04AM -0400, Jeff Johnson wrote:
> Frank Cusack wrote:
> 
> >On Mon, Aug 04, 2003 at 08:42:33AM -0400, Jeff Johnson wrote:
> >  
> >
> >>Frank Cusack wrote:
> >>
> >>    
> >>
> >>>I don't understand why rpm is complaining about breaking a dependency,
> >>>when the package being removed doesn't provide said dependency:
> >>>
> >>>[root@mother root]# rpm -e kernel-smp-2.4.21-gg3
> >>>error: Failed dependencies:
> >>>	kernel-smp = 2.4.21-gg2 is needed by (installed) NVIDIA_kernel-2.4.21-gg2-smp-1.0-4363gg10
> >>>	kernel-smp = 2.4.21-gg2 is needed by (installed) bcm5700-2.4.21-gg2-smp-6.2.11-gg3
> >>>
> >>>      
> >>>
> 
> You have 2 packages with a dependency on the package that you are
> upgrading. The dependency specifies a version, but not an epoch.
> Missing epoch is equivalent to Epoch:0 when packages are installed.
> 
> (Note: "when installed" missing epoch == 0, now everywhere.)
> 
> Both packages have the same version, but not the same epoch. So the new
> does not satisfy the previously satisifed  dependency because it has an 
> epoch.
> 
> Even though the versions are the same, the epoch's are not.

I'm not upgrading any package.  I'm just removing one.

Let's see if I get this right (please stop me where I go wrong):

1) bcm5700-2.4.21-gg2-smp depends on kernel-smp = 2.4.21-gg2
                                       (meaning = 0:2.4.21-gg2)
     See rpm -e output above.

2) This is satisfied by my kernel-smp-2.4.21-gg2 package.
     [root@mother root]# rpm -q --provides kernel-smp-2.4.21-gg2
     kernel = 2.4.21
     kernel-drm = 4.1.0
     kernel-drm = 4.2.0
     kernel-drm = 4.2.99.3
     kernel-drm = 4.3.0
     module-info
     kernel-smp = 20030716:2.4.21-gg2

3) kernel-smp-2.4.21-gg3 does not provide kernel = 2.4.21-gg2, for any epoch.
     [root@mother root]# rpm -q --provides kernel-smp-2.4.21-gg3
     kernel = 2.4.21
     kernel-drm = 4.1.0
     kernel-drm = 4.2.0
     kernel-drm = 4.2.99.3
     kernel-drm = 4.3.0
     module-info  
     kernel-smp = 20030716:2.4.21-gg3

4) bcm5700-2.4.21-gg2-smp does not depend on kernel-smp-2.4.21-gg3.

Note that for (2), kernel-smp-2.4.21-gg2 does not really meet the
dependency, because the dependency is for 'no epoch' meaning '0 epoch';
but this did install with no problems, so I still don't quite follow.
Perhaps the dependency is for 'any' epoch, or the epoch is not considered
in the dependency for some reason?

After straightening me out there :-) what about the fact that
kernel-smp-2.4.21-gg2, still installed, meets the dependency (% epoch).
removal of bcm5700 is complaining about breaking the dependency
kernel-smp = 2.4.21-gg2, which is provided by an installed rpm, not
the one I'm removing.

Also, see me email to James (this is a circular reference, sorry) about
the dependency being '=', not '=>'.  Even if something is going on
with the epoch that I don't understand, versions are not '='.

Also, at install time, bcm5700 had an "epoch-less" dependency (and
it installed without complaint).  Why, at removal time, would the epoch
be considered?

thanks for your patience
/fc




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index] []