Re: Spec file question

Jeff Johnson <[email protected]> Tue, 14 Oct 2008 20:21:22 -0400
Newsgroups gmane.linux.redhat.rpm.general
Message-ID <[email protected]>
On Oct 14, 2008, at 5:39 PM, Frost, Jere wrote:

>
> Hello all,
>
> I have little experience with RPM/spec files but trying to help a  
> fellow worker.   We have an an RPM meta package (task-compat- 
> vcd_fw_ipg_ins_ics_ics) that we want to install RHEL 32bit packages  
> on RHEL 64bit systems via yum for compatibility purposes.
>
> In the spec file, we specify "Requires: PackageName(s).i386"  for  
> each 32 bit package we want to install
> (e.g. "ImageMagick-c++-devel.i386").
>
> When trying to install the RPM metapackage via yum, we get an error  
> for each line "requires PackageName.i386"  e.g.:
>
> Error: Missing Dependency: ImageMagick-c++-devel.i386 is needed by  
> package task-compat-vcd_fw_ipg_ins_ics_ics
>

Yep.

> How do we specify PackageName(s).i386 in our spec file so Yum will  
> install the i386 version?
>
> yum list | grep ImageMagick-c++-devel
> ImageMagick-c++-devel.x86_64             6.2.8.0-3.el5.4         
> installed
> ImageMagick-c++-devel.i386               6.2.8.0-3.el5.4         
> RedHat-5.1Server
>
> "yum install ImageMagick-c++-devel.i386" works fine on the 64 bit  
> systems.
>

You basically cannot specify
	PackageName.i386
in an rpm package as you can on the yum CLI.

FYI, rpm-5.0 does permit arch to be appended to a package name
in a Requires: as you are trying to do. However, even then, yum would  
need to
split the "N.A" compund into a package {name,arch} tuple, and discover
what was intended to be satisfied by the Requires:. There
has been no detectable interest in supporting that convention in yum,  
the N.A compound
was implemented 1.5 years ago, requested by Fedora developers too.

IIRC  rpm-4.5.90 has a different convention, silently adding the
arch to the package name as Yet Another Provide, which current yum
might be able to discover. However, rpm-4.5.90 is not yet released,
and the packages built with the new convention are largely limited
to Fedora10beta atm.

hth

73 de Jeff