Specifying dependencies in SPEC file?
James Antill
james at fedoraproject.org
Wed Dec 14 15:38:19 UTC 2011
On Wed, 2011-12-14 at 17:03 +1100, Ivan wrote:
> Hello everyone,
>
> I am system administrator for educational institution and I new to
> this list. I will greatly appreciate if someone can assist me with my
> problem:
>
> I am building a customer noarch RPM package for RHEL5.x The package
> requires libraries provided by 32 and 64 versions of
> compat-libstdc++-33 package in the base RHEL5 channel.
> I am seeking advise on how to define "Requires" parameter in the spec
> file to make sure that both 32 and 64 version of a package with the
> same name compat-libstdc++-33 are installed. There is obviously
> something wrong with the way I am doing it. My steps can be
> summarised as follows:
>
> 1. I define "Requires" in my package.SPEC as follows:
>
> Requires: compat-libstdc++-33.i386, compat-libstdc++-33.x86_64
That doesn't work, you can't specify arch like that and you can't
specify the version in that way.
In later versions of rpm (Eg. RHEL-6) you can use %{_isa} ... and in
theory you can hardcode both isa's, but I'm not sure how supported that
usecase is.
In RHEL-5 you can do one of two things:
1. Provide something unique in both arches, and require both provides.
Icky, but should work (some packages in RHEL-5 do this, IIRC).
2. Pick a file from each package that is only provided by it, and
require those (I've heard of packages doing this, but I'm not sure there
are any in RHEL-5).
...in general though I'd recommend people not try to put "policy" in the
rpms, and do it some other way.
More information about the Rpm-list
mailing list