On Thu, Mar 21, 2019 at 8:16 PM Nomalatha Aerampu <
anomala...@pulsesecure.net> wrote:

> Hi Team,
>
>
> Our application is packaged as RPM and qualified to run in both RHEL and
> SUSE platforms. It has a dependency for perl LDAP module and hence in our
> application RPM spec file we specify perl-LDAP in "Requires" section since
> the earlier SUSE and RHEL releases we had it as follows,
>
> perl-LDAP-0.40-2.el6.noarch
>
>
> In the recent days, while we are qualifying our application for SUSE15
> platform, we see that perl LDAP module is available in the following naming
> convention due to which our "Requires" section is failing,
>
> perl-ldap-0.65-bp150.2.4.x86_64
>
> Even in the following link we see 2 naming (upper case and lower case LDAP)
> https://rpmfind.net/linux/rpm2html/search.php?query=perl(Net%3A%3ALDAP)
> RPM resource perl(Net::LDAP)
> <https://rpmfind.net/linux/rpm2html/search.php?query=perl(Net%3A%3ALDAP)>
> rpmfind.net
> The search service can find package by either name (apache),
> provides(webserver), absolute file names (/usr/bin/apache), binaries
> (gprof) or shared libraries (libXm ...
>
>
That rpmfind search is a major hint. When setting up rpm spec file Requires
or BuildRequires stanzas for perl modules which require something, you
should use that same syntax, rather than a package name. Ex:

    Requires: perl(Net::LDAP)

You can specify a version using that syntax as well:

    Requires: perl(Net::LDAP) >= 0.40

I think this also allows the required module to be installed via rpm or via
a manual install, and the system will go figure it out, but I'm not certain
of that.

Fedora RPM guidelines also mention use of perl(Foo) for requires and
provides:
https://fedoraproject.org/wiki/Packaging:Perl#Perl_Requires_and_Provides

HTH,
--
Josh I.

Reply via email to