[kw-pm] how to satisfy an rpm dependency of the form "perl(XX:YY)"

John Macdonald john at perlwolf.com
Tue Dec 14 12:08:12 CST 2004


On Tue, Dec 14, 2004 at 08:42:30AM -0500, Robert P. J. Day wrote:
> 
>   (similar to something i just posted to the red hat rpm list.)
> 
>   i'm still fighting with trying to install the latest Kwiki RPM on my
> FC3 system, and i'm still a bit confused about what it takes to
> satisfy a perl rpm dependency.
> 
>   from before, the kwiki install claimed to have a dependency of (and
> i quote), "perl(IPC::Run)".  since i interpreted that as a perl module
> dependency, i CPANed it down and tried the install.  failed, still
> claiming that that dependency was missing.
> 
>   based on advice i was given, i located the actual perl-IPC::Run rpm,
> installed it via rpm, and *then* at least that part of the install
> worked.
> 
>   but this is confusing, as i'm not sure how to interpret a dependency
> of the form "perl(XX:YY)".  if it just needs the module, why can't i
> fix that with CPAN?  do i really have to satisfy those dependencies
> with an rpm install?

As I understand it, rpm keeps a database of what has been
installed (and also the unistall instructions and the rpm
package).  That db of installed stuff is only managed and
understood by rpm itself - it gets updated when you add or
remove a package.  But when you install using CPAN, rpm has no
knowledge of what you've done and thinks the old version is
still installed.  While it would be nice if rpm went out and
checked the version number of the actual installed software, to
do that it would have to know how to get that version info for
every type of installable item (Perl modules, binary programs,
documentation, ...).  That would be an error-prone and never
ending task for the rpm programmers.  Instead they make each
project work out how to determine and encode the version info
of its own files and put it into the tpm control data in a
standard format that rpm can understand for all installables.

So, your approach of cpan2rpm is probably the right direction,
as long as it actuall works.  Alternatively, you could join the
Fedora community and find out how they build their cpan rpms,
and volunteer to help update them with newer ones.

-- 


More information about the kw-pm mailing list