Re: src.rpm and i586.rpm


Subject: Re: src.rpm and i586.rpm
From: James Gibson (twistedhammer@subdimension.com)
Date: Sat Apr 06 2002 - 03:59:55 AKST


On Sat, 6 Apr 2002, Chris Hamilton wrote:
> I've got an rpm question.
>
> I wanted to upgrade mod_ssl from 2.8.4 to 2.8.7. I downloaded the
> mod_ssl-2.8.4-2mdk.src.rpm and tried to install it using "rpm -uvvh
> mod_ssl-2.8.7-2mdk.src.rpm". Nothing happened, then I tried using the
> rpm -ivvh command, and nothing happened again.
>
> Finally I did an "rpm -e mod_ssl.2.8.4-2mdk.src.rpm". That got rid of my
> old mod_ssl. When I tried to install 2.8.7 (using the .src.rpm) after that,
> the install didn't take, at least that is how it appeared to me.
>
> Then I "rpm -ivvh mod_ssl-2.8.7-2mdk.i586.rpm". Did an rpm -qi mod_ssl, and
> it tells me that 2.8.7 is being used, so I'm happy.
>
> So my question... what is the difference between an .i586 rpm and a
> .src.rpm? Are they both required, and did I just get lucky by installing
> them in the proper order? Apache is working and serving up https, so I
> think everything went ok. Thanks.

No! you do NOT need both..

The difference is night and day.
 ** An *.src.rpm (also found as *.srpm) is a _source_ package.
 ** An *.$ARCH.rpm (where ARCH is your architecture: i[3456]86, sparc,
m68k, etc..) is a _binary_ package.

The binary package is what you are most familiar with: it contains
pre-compiled binaries for a given application. all that the rpm program
has to do is extract them.

An .srpm generally contains two items: the source tarball (*.tar.gz) and a
.spec file (short for 'specification', the .spec file tells the rpm
program how to compile it if it wishes to do so.). When you do an 'rpm -i'
all that rpm does is extract the tarball and the .spec file. This is
usually extracted to /usr/src/packages/{SOURCES,SPECS}, at least on SuSE..
it should be similar on another system.

In general you should have no reason to mess with an .srpm, ever. However,
if it is all you can find or you are the curious sort, you can have rpm
build and install the binaries for it for you by calling 'rpm --recompile
foobar.srpm', or use the --rebuild option instead to have it also build a
binary package.

James "nose to the grindstone" Gibson

---------
To unsubscribe, send email to <aklug-request@aklug.org>
with 'unsubscribe' in the message body.



This archive was generated by hypermail 2a23 : Sat Apr 06 2002 - 17:30:22 AKST