[CentOS] Rebuilding RPMs

Mon Nov 14 20:09:09 UTC 2005
Matt Hyclak <hyclak at math.ohiou.edu>

On Mon, Nov 14, 2005 at 03:05:18PM -0500, Bowie Bailey enlightened us:
> From: Matt Hyclak [mailto: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.
> > > > > 
> > > > > 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.
> > 
> > For the *-kernel packages, you'll have to rpm -i the src.rpm, edit
> > the spec file, and rebuild from that.
> 
> Making progress here.  One more question and I think I'll be done.
> 
> I installed the source package and edited the spec file to change the
> kernel version and remove the fake-build-provides requirement (as I
> can't seem to find it and it appears to be safe to remove based on a
> previous conversation on this list).
> 
> I still have a build requirement for the kernel-hugemem package.  I
> don't have the hugemem kernel installed and I'm just trying to build
> the smp package.  Is it safe to remove this dependency if all I care
> about is the smp package?
> 
>     $ rpmbuild -bb --target=i686 rpm/SPECS/cman-kernel.spec
>     Building target platforms: i686
>     Building for target i686
>     error: Failed build dependencies:
>             kernel-hugemem = 2.6.9-22.0.1.EL is needed by
> cman-kernel-2.6.9-36.0.i686
> 

You'll want to remove the dependency and the bits where it builds the
highmem modules, but there's no reason to not do that if you won't use
highmem.

Matt

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