Specifying dependencies in SPEC file?

Ivan ivan.teliatnikov at gmail.com
Wed Dec 14 06:03:24 UTC 2011

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

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
AutoReq: yes

2. I check and see that package builds correctly:

rmbuild -v -bb package.SPEC
Requires: /bin/sh compat-libstdc++-33.i386 compat-libstdc++-33.x86_64
libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1)
libc.so.6(GLIBC_2.3) libcrypt.so.1 libdl.so.2 libdl.so.2(GLIBC_2.0)
libdl.so.2(GLIBC_2.1) libm.so.6 libm.so.6(GLIBC_2.1) libpthread.so.0
libpthread.so.0(GLIBC_2.0) libpthread.so.0(GLIBC_2.1)
Checking for unpackaged file(s): /usr/lib/rpm/check-files
/var/tmp/package-9.10.00The way I am doing it is not working, so
Wrote: /usr/src/redhat/RPMS/noarch/package-9.10.00-6.noarch.rpm
Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.46550
+ umask 022
+ cd /usr/src/redhat/BUILD
+ cd bmc-patrol-agent-usyd-9.10.00
+ rm -rf /var/tmp/bmc-patrol-agent-usyd-9.10.00

3. Then I test to install it, it failes to install dependencies:

 yum localnstall /usr/src/redhat/RPMS/noarch/package-9.10.00-6.noarch.rpm -yy

Error: Missing Dependency: compat-libstdc++-33.x86_64 is needed by
package package-9.10.00-6.noarch (/package-9.10.00-6.noarch)
Error: Missing Dependency: compat-libstdc++-33.i386 is needed by
package package-9.10.00-6.noarch (/package-9.10.00-6.noarch)

4. I try installing dependencies ( compat-libstdc++-33.x86_64,
compat-libstdc++-33.i386 ) manually and they install just fine.

yum install compat-libstdc++-33.i386 compat-libstdc++-33.x86_64 -yy

  compat-libstdc++-33.i386 0:3.2.3-61
        compat-libstdc++-33.x86_64 0:3.2.3-61


My question is how to tell spec file that a multiple version ( 32 and
64 ) of the same package should be installed?

Ivan Teliatnikov
e-mail: ivan.teliatnikov at gmail.com
моб: +7 90609 30 268 ( in Russia )
mob: +61 402 173 179 (in Australia ) *
ICQ: 413687763
Skype: ivan.teliatnikov
VoipCheap: storozhsergeich_voipcheap

More information about the Rpm-list mailing list