Thread: [RPM] binaries not built from source rpm

[RPM] binaries not built from source rpm

From
Cam Smith
Date:
Hi,

I'm running SuSE 7.2, kernel 2.4.6, rpm 3.0.6.  I'm trying to build rpm
binaries from the source rpm.  I was planning to fiddle with the spec to
make things all nice for SuSE, but I haven't even gotten that far.  I
installed the source rpm and did a 'rpm -ba postgresql.spec' just to
familiarise mysef with the build, but at the end of the build the binary
rpms are nowhere to be seen.

There are no error messages that I can see, the build seems to complete
fine. It just finishes and the rpms have not been built.

Attached is the output form the build.

Thanks for you time,


Cam Smith
Solid State
----------------
p:  613 9662 4308
f:   613 9662 4722
m: 0146 150 422
e: cam@solidstate.com.au

Attachment

Re: [RPM] binaries not built from source rpm

From
Lamar Owen
Date:
On Wednesday 18 July 2001 21:25, Cam Smith wrote:
> I'm running SuSE 7.2, kernel 2.4.6, rpm 3.0.6.  I'm trying to build rpm
> binaries from the source rpm.  I was planning to fiddle with the spec to
> make things all nice for SuSE, but I haven't even gotten that far.  I
> installed the source rpm and did a 'rpm -ba postgresql.spec' just to
> familiarise mysef with the build, but at the end of the build the binary
> rpms are nowhere to be seen.

First, thanks for the build log.  Second, the reason it isn't building the
binaries is an error.  Tracing the log (from the bottom), I find, first:
'Could not open %files file
/usr/src/packages/BUILD/postgresql-7.1.2/files.lst: No such file or
directory' on line 4100 of the log, which corresponds to line 811 of the
7.1.2-5PGDG specfile.

Ok, that's a showstopper, as files.lst in that particular place is essential
for the build.  Ok, why isn't files.lst being built?  Lessee, at line 3232 is
the start of the tests for what kind of system, Red Hat or SuSE, that we
have. And both tests fail, which means no files.lst is created, blowing out
the final build.

Reference line 509 of the 7.1.2-5PGDG spec file for the start of the spec
file code producing this list, and make a test and file-list for SuSE 7.2
(files-lists.tar.gz in the source RPM).  I think, IIRC, that SuSE is now
using /etc/init.d for the initscripts, whereas the RedHat test is for
/etc/rc.d/init.d, and the old-style SuSE test is for /sbin/init.d.  Thus, the
file list for the server subpackge at line 811 isn't being satisfied.

Note that the old-style SuSE stuff was only partially implemented, as I lost
access to the SuSE machines I was building on not long after I wrote that.

If SuSE isn't using special files anymore for config, the standard LSB stuff
in the Red Hat list should work.
--
Lamar Owen
WGCR Internet Radio
1 Peter 4:11