Red Hat Bugzilla – Bug 13561
rpm doesn't cope with symlinks for prereqs
Last modified: 2008-05-01 11:37:56 EDT
Installing afterstep and some other rpms, it complained that is
needed /usr/bin/perl. On our systems, this is a symlink to a nonredhat
perl install. The links is present, with that name, but it appears that
rpm does not consider that ok.
I feel it should be doing a stat() rather than an lstat() for that check.
Example complaint, with ls -ld of perl underneath:
[home/cameron]#tiomkin*> rpm -Uv 4home/AfterStep-*
error: failed dependencies:
/usr/bin/perl is needed by AfterStep-1.8.0-1
/usr/bin/perl is needed by AfterStep-APPS-20000124-6
[home/cameron]#tiomkin*4> ls -ld /usr/bin/perl
lrwxrwxrwx 1 root root 18 Mar 31 11:31 /usr/bin/perl ->
[home/cameron]#tiomkin*> ls -ldL /usr/bin/perl
-rwxrwxr-x 2 cameron cameron 734315 Apr 20 17:33 /usr/bin/perl
Rpm manages packages, not files. Basically, that means that you would have to
a package containing the /usr/bin/perl symlink for rpm to correctly identify the
Meanwhile, here's how to satisfy the dependency without creating a package
echo 'Provides: /usr/bin/perl" >> /etc/rpmrc
Note that this functionality will be removed in some future release of rpm in
building a package.