[ale] rpm-fu question

Charles Shapiro charles.shapiro at nubridges.com
Wed Jul 3 09:51:33 EDT 2002


I'm using crust (http://www.rusthq.com/) to create distribution rpms for
a bunch of software, and running into an interesting problem creating an
rpm file for our jabber ( http://www.jabber.org/ ) binary. Usually,
jabber is distributed as source and then compiled on your system, but in
our case we have a lot of systems set up in exactly the same way, all
with no C compiler on 'em. I'm trying to move from a tar(1)-based
distribution method to the kewl new happenin' rpm(8)-based way.

The problem is that rpm appears to truncate the jabber binary. I start
with an /opt/jabber/jabberd/jabberd which looks like this:

[ cshapiro ~/cvswork/nu/system/shared/opt/jabber/jabberd ]ls -l jabberd
-rwxr-xr-x    1 cshapiro users      725301 Feb 11 17:14 jabberd
[ cshapiro ~/cvswork/nu/system/shared/opt/jabber/jabberd ]cksum jabberd
3641875751 725301 jabberd

I then use crust to create an rpm with only that file in it, yet when I
unpack the rpm on another system I get:

[root at localhost jabberd]# ls -l jabberd
-rwxr-xr-x    1 root     root       277112 Jul  2 15:09 jabberd
[root at localhost jabberd]# cksum jabberd
1727297577 277112 jabberd


I can ask the rpm itself what it thinks the file is like, and here's the
response I get:

[ cshapiro ~/rust/RPMS/i386 ]rpm -ql --dump -p
Jabber-shared-1.5-5.i386.rpm 
/opt/jabber 4096 1025702712  040755 root root 0 0 0 X
/opt/jabber/jabberd 4096 1025702712  040755 root root 0 0 0 X
/opt/jabber/jabberd/jabberd 277112 1025702712
64b1467c26e28886da28fc51e2f298b0 0100755 root root 0 0 0 X

The final line here shows that rpm has packed the binary at 277112
bytes, rather than its true size of 725301 bytes.

The source rpm which crust automagically produces holds a tar file which
contains the jabber  binary at its correct size; run "rpm -ba" manually
to generate the rpm from the crust-generated spec and source files and
the rpm still makes /opt/jabber/jabberd/jabberd 277112 bytes in size. 
I've checked disk space on everything in sight and tried it on a
different machine with the same results.  I'm running rpm v 4.0.3;
according to  http://www.rpm.org/ the latest & greatest is V4.0.4, but
the change log gives no hint about file corruption under any
circumstances.  

I'll email the crust-generated spec file under separate cover if you ask
me. It's a little large to dump into this email, which is already
lengthy.

Heck, a homebrew to the first guy who gives me a hint I can use!

-- CHS


---
This message has been sent through the ALE general discussion list.
See http://www.ale.org/mailing-lists.shtml for more info. Problems should be 
sent to listmaster at ale dot org.






More information about the Ale mailing list