Thanks for the feedback. This is what I have for each package.
centos7:~/rpmbuild/RPMS/x86_64>rpm -qp --provides VBSPerl-1.0-15.x86_64.rpm
VBSPerl = 1.0-15
VBSPerl(x86-64) = 1.0-15
centos7:~/rpmbuild/RPMS/x86_64>rpm -qp --requires VBSPerl-1.0-15.x86_64.rpm
/bin/sh
/bin/sh
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1
centos7:~/rpmbuild/RPMS/x86_64>rpm -qp --provides fax-2.3-82.x86_64.rpm
fax = 2.3-82
fax(x86-64) = 2.3-82
centos7:~/rpmbuild/RPMS/x86_64>rpm -qp --requires fax-2.3-82.x86_64.rpm
/bin/sh
/opt/VBSPerl/bin/perl
/usr/bin/perl
From: Rpm-list [mailto:rpm-list-bounces@xxxxxxxxxxxxx] On Behalf Of Stuart Gathman
Sent: Monday, March 20, 2017 10:17 AM
To: rpm-list@xxxxxxxxxxxxx
Subject: Re: How to define package 'provides'
On 03/20/2017 10:04 AM, Tech Support wrote:
All;
What I’m trying to do is build two rpms. The first one is a local library of Perl modules, and the second one is a fax application that relies on the Perl modules. The problem that I am having is that I am getting an error when I try to install the second application rpm like so:
error: Failed dependencies:
/opt/VBSPerl/bin/perl is needed by fax-2.3-82.x86_64
perl(Asterisk::AMI) is needed by fax-2.3-82.x86_64
The first rpm contains the path to the Perl interpreter and the Asterisk::AMI Perl module so that’s not the problem. I can get around the error by using the –nodeps option when trying to install the module, but that really doesn’t solve the problem. To me, I see two solutions, the first one where I define the Perl module rpm as providing the dependencies, and the second one where the application rpm is built but doesn’t check for dependencies. To me, the first option is the better answer. I tried the first option in the Perl library spec file but, but that didn't fix it.
Provides: /opt/VBSPerl/bin/perl, perl(Asterisk::AMI), perl(Carp), perl(DBI), perl(FindBin), perl(lib), perl(strict)
I also tried the following in the application spec file without success.
AutoReqProv: no
Autoreq: no
%define __find_requires %{nil}
I’m really stumped here, and I know that the answer is probably going to be something obvious. If anyone has any insight at all, I would greatly appreciate it.
The first step is to see what your rpms are actually requiring and providing:
rpm -qp --provides fax-2.3-82.x86_64.rpm
rpm -qp --requires fax-2.3-82.x86_64.rpm
repeat for your perl module rpm.