Thank you for these details.
However
1) I expect that I would have to edit the .spec file
2) After that I install the package
perl-Tk-JBrowseEntry-5.22-1.fc30.noarch
I generate a
perl-Tk-JFileDialog.spec
which contains:
BuildRequires: perl(Tk::JBrowseEntry) >= 4.63
Why that?
When I want to install
perl-Tk-JFileDialog-2.20-1.fc30.noarch.rpm
I get
Error:
Problem: conflicting requests
- nothing provides perl(Tk::JBrowseEntry) >= 4.63 needed by
perl-Tk-JFileDialog-2.20-1.fc30.noarch
(try to add '--skip-broken' to skip uninstallable packages)
The solutions that I found are:
1) add Provides: perl(Tk::JBrowseEntry) = %{version}-%{release}
in perl-Tk-JBrowseEntry.spec
or
2) remove
BuildRequires: perl(Tk::JBrowseEntry) >= 4.63
in
perl-Tk-JFileDialog.spec
In my opinion, I should not have to edit the .spec files
===========================================================================
Patrick DUPRÉ | | email: pdupre(a)gmx.com
Laboratoire interdisciplinaire Carnot de Bourgogne
9 Avenue Alain Savary, BP 47870, 21078 DIJON Cedex FRANCE
Tel: +33 (0)380395988
===========================================================================
> Sent: Friday, June 14, 2019 at 7:06 PM
> From: "Gordon Messmer" <gordon.messmer(a)gmail.com>
> To: users(a)lists.fedoraproject.org
> Subject: Re: rpmbuild
>
> On 6/12/19 1:43 PM, Patrick Dupre wrote:
> > cpanspec --add-buildrequires perl-generators Tk-JBrowseEntry-5.22.tar.gz
> >
> > only add:
> > BuildRequires: perl-generators
> > in the .spec file
> >
> > which does not help.
>
>
> Sure, it does. The purpose of the "perl-generators" package is to
> include information about what a perl package "provides" and
"requires"
> automaticaly, so that you don't have to. If I build Tk-JBrowseEntry
> with BuildRequires: perl-generators, then I get this on the resulting
> package:
>
> # rpm -q --provides perl-Tk-JBrowseEntry-5.22-1.fc30.noarch
> perl(Tk::JBrowseEntry) = 5.22
> perl-Tk-JBrowseEntry = 5.22-1.fc30
>
> If I run the command you included above, there are several changes we'd
> want to make to the spec to bring it more in line with Fedora's
> packaging guidelines. "Group" and "BuildRoot" aren't used in
Fedora, so
> those lines can be removed. The "make" command can be replaced with
> "%{make_build}". The %install section should not remove the build
> root. The %clean section should be removed. We need to add
> "PERL5LIB=%{buildroot}%{perl_vendorlib}" to the "make test"
command in
> order for it to find the modules it installed in the build root
> (although some tests don't work without an X11 connection). "%defattr"
> isn't required in Fedora. Finally, we need to add "%{_bindir}/*" or
> "%{_bindir}/JBrowseTest.pl" to the %files section (or, alternatively,
> remove that file in the %install section if it should not be included in
> the package). A patch is attached with those changes, for a more
> literal specification of the changes.
>
> I can use that modified spec to build a package, and move on to building
> the other package you mentioned, perl-Tk-JFileDialog. That package
> requires very similar changes, with the exception that "make test"
> actually fails, so I removed that rather than resolve the issue because
> I'm not working on pushing this through formal review. :)
>
> After making the same changes to perl-Tk-JFileDialog, and building the
> package, both packages can be installed:
>
> # rpm -q perl-Tk-JFileDialog perl-Tk-JBrowseEntry
> perl-Tk-JFileDialog-2.20-1.fc30.noarch
> perl-Tk-JBrowseEntry-5.22-1.fc30.noarch
>
>
> On 6/10/19 1:10 AM, Patrick Dupre wrote:
> > Same issue with Tk-JFileDialog.spec
> > In addition, I get:
> > rpmbuild -bb perl-Tk-JFileDialog.spec
> > error: Failed build dependencies:
> > perl(Tk::JBrowseEntry) >= 4.63 is needed by
perl-Tk-JFileDialog-2.20-1.fc30.noarch
> >
> > while the installed version is 5.22
>
>
> I believe you got this because your build environment did not include
> the perl-generator package. Once you add that to your BuildRequires,
> then the perl-Tk-JBrowseEntry package will automatically provide
> "perl(Tk::JBrowseEntry)", and resolve the dependency reported in this
> error message.
>
> _______________________________________________
> users mailing list -- users(a)lists.fedoraproject.org
> To unsubscribe send an email to users-leave(a)lists.fedoraproject.org
> Fedora Code of Conduct:
https://getfedora.org/code-of-conduct.html
> List Guidelines:
https://fedoraproject.org/wiki/Mailing_list_guidelines
> List Archives:
https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org
>