Bug 110169 - rpm fails to solve recursive dependencies
rpm fails to solve recursive dependencies
Product: Fedora
Classification: Fedora
Component: rpm (Show other bugs)
i386 Linux
high Severity medium
: ---
: ---
Assigned To: Jeff Johnson
Mike McLean
Depends On:
  Show dependency treegraph
Reported: 2003-11-15 16:19 EST by lucas dixon
Modified: 2007-11-30 17:10 EST (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2003-12-27 09:38:25 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description lucas dixon 2003-11-15 16:19:37 EST
Description of problem:

I just switched from RedHat9 to Fedora 1 Core, and had some trouble
isnatlling rpms that worked fine on RedHat9. When using rpm to install
 mplayer (and all its components) which has recursive dependencies:

mplayer-0.90-1 requires: mplayer-common = 0.90
mplayer-common-0.90-1 requires mplayer = 0.90

In redhat 9, rpm was able to install these using "rpm -i" with both
file names given, but in Fedura it complains that:

error: Failed dependencies:
        mplayer-common = 0.90 is needed by mplayer-0.90-1
        mplayer-common = 0.90 is needed by mplayer-gui-0.90-1

Version-Release number of selected component (if applicable):

I'm using the default rpm from the Fedora 1 Core, which is version 4.2.1

How reproducible:
very reproducable, do the following:

mplayer-0.90-1 and 
I think you can find them at: 

then do a rpm -i *.rpm in the dir where the rpms were downloaded.

Steps to Reproduce:
1. as above

This also happens with other packages, with recursive deps it's as if
its using the "--noorder" flag...?

Actual results:
error: Failed dependencies:
        mplayer-common = 0.90 is needed by mplayer-0.90-1
        mplayer-common = 0.90 is needed by mplayer-gui-0.90-1

Expected results:
successfull install of mplayer.

Additional info:

that should be all you need - can you let me know if there is a fix?
at the moment I just force it using --nodeps, but this is ugly and
Comment 1 Jeff Johnson 2003-12-27 09:38:25 EST
Yup. rpm-4.2.1 requires Epoch: to be specified where
needed, and assumes Epoch: 0 if missing.

For example, the mplayer package has Epoch: 2 and carries
    Provides: mplayer = 2:0.90-1.x
(Note the "2:" syntax for Epoch: in a dependency.)

Then the mencode package needs to write it's dependency
on mplayer as
    Requires: mplayer = 2:0.90
rather than
    Requires: mplayer = 0.90

There is a --promoteepoch CLI flag, and adding -vv will
show all occurences that need fixing.

Note You need to log in before you can comment on or make changes to this bug.