Frantisek Hanzlik wrote:
Hello,
I'm not sure when I write to right list, please correct me if no.
I just tried build RPM package for beta version of program calamaris
(
http://cord.de/tools/squid/calamaris/calamaris-2.99.4.0.tar.gz )
RPM package was built successfully, but when I tried install it,
rpm fail with message
"perl(ident) is needed by calamaris-2.99.4.0-2.fc13.noarch"
"rpm -qp --requires" output:
config(calamaris) = 2.99.4.0-2.fc13
perl>= 0:5.002
perl(Carp)
perl(GD::Graph)
perl(GD::Graph::bars)
perl(GD::Graph::colour)
perl(GD::Graph::utils)
perl(Getopt::Long)
perl(Switch)
perl(Sys::Hostname)
perl(Time::Local)
perl(calamaris::calAxestype)
perl(calamaris::calAxestype3d)
perl(constant)
perl(ident)
perl(integer)
perl(lib)
perl(strict)
rpmlib(CompressedFileNames)<= 3.0.4-1
rpmlib(FileDigests)<= 4.6.0-1
rpmlib(PayloadFilesHavePrefix)<= 4.0-1
rpmlib(VersionedDependencies)<= 3.0.3-1
rpmlib(PayloadIsXz)<= 5.2-1
And "repoquery --whatprovides 'perl(ident)'" give me no output.
I tried build& install this package both on Fedora 12 and Fedora 13,
with same result. Although "rpm -U --nodeps ..." force install it and
it will probably work, I would know why RPM want this capability and
how it may be solved.
Some my searching on Bugzilla on Internet wasn't successfull, my SPEC
file contain only this "Requires" line:
Requires: squid perl(NetAddr::IP) perl(GD::Graph) perl(GD::Graph3d)
but result is same when this line isn't present. Probably rpmbuild
has some mechanism for finding Perl package dependencies and list
of required capabilities is created automatically.
Of course, in calamaris programs isn't referenced any 'ident' object.
Know someone how solve this problem?
Thank in advance,
Franta Hanzlik
--
packaging mailing list
packaging(a)lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/packaging
I probably find this problem cause - /usr/lib/rpm/perl.req generate
list of perl source requirements, but does his work without deeper
syntax parsing. And in this case was badly interpreted USAGE string
as perl code. There is part of this:
...
--requester-report-use-user-info|-u
use ident information if available (*)
...
"calamaris-2.59" stable version, which is in Fedora repo, has
in USAGE string similar line:
-u user (use ident information if available) (*)
but perl.req logic in this case not evaluate it as code, thus things
works OK.
For now I will slightly modify USAGE string and it solve problem.
Please, should I add entry to Bugzilla, when I built package
which isn't in official Fedora repo?
Thanks, Franta Hanzlik