[CentOS] Rebuilding RPMs

Mon Nov 14 18:32:05 UTC 2005
Matt Hyclak <hyclak at math.ohiou.edu>

On Mon, Nov 14, 2005 at 12:09:49PM -0500, Bowie Bailey enlightened us:
> From: Karanbir Singh [mailto:Mail-Lists at karan.org]
> > 
> > Bowie Bailey wrote:
> > > I am trying to install the Cluster RPMS from rpm.karan.org.  But
> > > since I have updated my kernel with yum, I have the wrong kernel
> > > for a couple of the packages.
> > > 
> > > # rpm -i --test cman-kernel-smp-2.6.9-36.0.i686.rpm
> > > error: Failed dependencies:
> > >         /lib/modules/2.6.9-11.ELsmp is needed by
> > > cman-kernel-smp-2.6.9-36.0.i686
> > >         kernel-smp = 2.6.9-11.EL is needed by
> > > cman-kernel-smp-2.6.9-36.0.i686
> > > # uname -a
> > > Linux bnofdnbackup.buc.com 2.6.9-22.0.1.ELsmp #1 SMP Thu Oct 27 13:14:25
> CDT
> > > 2005 i686 i686 i386 GNU/Linux
> > > 
> > > I think I can just grab the source RPM and do a rebuild, but
> > > having never attempted that before, I just want to make sure I'm
> > > not missing anything.  (I have built RPMs from source tarballs, so
> > > I know how to setup the build environment)
> > > 
> > > It looks like I can just do this:
> > > 
> > > # rpmbuild --rebuild cman-kernel-2.6.9-36.0.src.rpm
> > > 
> > > Is there anything else I need to do?
> > > 
> > 
> > Just simple rebuilds will work, you might need to work out what order 
> > they are built in - and some pkgs like the cman-kernel need a 
> > specified 
> > --target i686 passed in via the rpmbuild.
> 
> Hmmm...no luck there.  It still wants the older kernel.
> 
> Do I need the buildcentos user and group?
> 
> What is "fake-build-provides" and where can I get it?
> 
>     $ rpmbuild --rebuild --target=i686 cman-kernel-2.6.9-36.0.src.rpm
>     Installing cman-kernel-2.6.9-36.0.src.rpm
>     warning: user buildcentos does not exist - using root
>     warning: group buildcentos does not exist - using root
>     warning: user buildcentos does not exist - using root
>     warning: group buildcentos does not exist - using root
>     Building target platforms: i686
>     Building for target i686
>     error: Failed build dependencies:
>             kernel-smp = 2.6.9-11.EL is needed by
> cman-kernel-2.6.9-36.0.i686
>             kernel-hugemem = 2.6.9-11.EL is needed by
> cman-kernel-2.6.9-36.0.i686
>             kernel-devel = 2.6.9-11.EL is needed by
> cman-kernel-2.6.9-36.0.i686
>             kernel-smp-devel = 2.6.9-11.EL is needed by
> cman-kernel-2.6.9-36.0.i686
>             kernel-hugemem-devel = 2.6.9-11.EL is needed by
> cman-kernel-2.6.9-36.0.i686
>             fake-build-provides is needed by cman-kernel-2.6.9-36.0.i686
> 

For the *-kernel packages, you'll have to rpm -i the src.rpm, edit the spec
file, and rebuild from that.

Matt

-- 
Matt Hyclak
Department of Mathematics 
Department of Social Work
Ohio University
(740) 593-1263