LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (http://www.linuxquestions.org/questions/linux-software-2/)
-   -   Difference between .src.rpm & .tar.gz packages (http://www.linuxquestions.org/questions/linux-software-2/difference-between-src-rpm-and-tar-gz-packages-103683/)

chinmay nautiya 10-14-2003 02:30 AM

Difference between .src.rpm & .tar.gz packages
 
I know what are .rpm packages (they are precompiled for specific kernel and architechture) but i don't know the difference between the - .src.rpm & .tar.gz packages and how to use them. please anybody explain me thoroughly. thanks.

dalek 10-14-2003 02:46 AM

No real expert here
 
RPM = Redhat Package Manager. Usually used by Mandrake and Redhat for software. I think the src.rpm is a kernel but not 100% sure.

Tar.gz is a gunzipped and tarred file. Tar takes a lot of files and makes them into one big file. The gzip compresses the file. Always start at the end when undoing. Gunzip it first then untar it. That leaves you with the files in a directory. Never change the name of the file. I did that once. It was a mess. There are also bz2 files. Just a newer version sort of.

There will usually be a read me in there when you get it untarred that will list the details to install. Kind of varies depending on what it is. Have to compile the kernel or make then make install for software.

Someone else may have a good link that will give better info. This should clear the water a liitle bit.

Oh, tar is Tape Archive. Used to backup files to a tape. Looks like a big cassette.

Later

:D :D :D :D

GŠutama 10-14-2003 03:25 AM

.src.rpm files are sort of between .tar.gz (called tarball)and .rpm files. since dalek already described what .tar.gz files are (i.e just zipped source code) I will just explain .src.rpm.

A tarball is a good way of installing new software however the down side of tarballs is there is no good way of removing software. Typically when you build install a tarbal you run
Code:

./configure
make
make install

If you want to remove this software you can, if you are lucky, run make remove or make uninstall. But for this to work the makefile has to include instructions of what to remove, and that is sometimes not the case.
hmm. enough about that.

the .src.rpm files are like a tarball but with som aditional information that makes it possible for 'rpm' to compile and build a .rpm package. This package is compiled for your machine and saved in some RPM directory.
For me it is
Code:

/usr/src/RPM/RPMS/i586/
because I use the i586 arch.

This is nice because you can now install the .rpm file and get the program in your rpm database

so in short:
rpm :- pre compiled source
.src.rpm :- source code that will compile on your machine and this produces a .rpm file.
.tar.gz :- just plain zipped source code

chinmay nautiya 10-14-2003 02:37 PM

thanks Dalek & GŠutama, but some question still there that -
- how to use the .src.rpm file so that i can get the final RPM file. pls explain further.

dalek 10-14-2003 02:47 PM

This may help:



4. Using RPM

In its simplest form, RPM can be used to install packages:

rpm -i foobar-1.0-1.i386.rpm

The next simplest command is to uninstall a package:

rpm -e foobar



If that don't help try this:



While these are simple commands, rpm can be used in a multitude of ways. To see which options are available in your version of RPM, type:

rpm --help

You can find more details on what those options do in the RPM man page, found by typing:

man rpm



I just click on it with the mouse myself. Click yes and off it goes. I don't know what it does but it usually works.

:D :D :D

GŠutama 10-14-2003 03:18 PM

I use the --rebuild flag to create a binary package.

for this to work you might need some additional packages for rpm.

these are ( as far as I know, taken from http://www.xs4all.nl/~hanb/software/...enericrpm.html)

* The package rpm-build which holds scripts used to build packages.
* The package spec-helper which is a tool to minimize the specfiles by doing automatic things such as stripping the binaries and compressing the man pages.
* The package libtool which is used by some configure scripts to build shared libraries.
* If you want to have AntiAliased font support you have to install the Xft-devel rpm.

now do a
Code:

rpm --rebuild package.src.rpm
rpm -Uvh /path/to/package/package.rpm

dalek: used the -i flag but I kind of like the -Uvh flags
U: update
v: visual
h: hash (prints '#' signs)

dalek 10-14-2003 05:05 PM

I guess it was not obvious. I copied that out of the How to that's on my system. That's why I put I just click it and let it go. I have never done one in command line before.

Later

:D :D :D :D :D

chinmay nautiya 11-10-2003 01:43 PM

thanks for explaining me thouroghly. bye.

prajasekarbe 08-01-2006 04:40 AM

best installation ?????
 
Quote:

Originally Posted by chinmay nautiya
I know what are .rpm packages (they are precompiled for specific kernel and architechture) but i don't know the difference between the - .src.rpm & .tar.gz packages and how to use them. please anybody explain me thoroughly. thanks.



which type of installation is better,either tar or rpm

billymayday 08-01-2006 05:11 AM

RPMs are generally easier to manage, and as mentioned above, they are easier to remove, and also to keep track of updates (especially if you use something like yum to update), because rpm maintains a database of what's installed.

However, there are two downsides to rpms that come to mind. First, not every piece of software is in an rpm, or at least in an rpm for your distro. The other is that you are reliant on the packagers to produce updates in a timely fashion. You may, for example, want to update something like clamav as soon as it is released, rather than wait a week or two for a new package.

Some rpm's also have quirks. There is, supposedly and issue of compatability between some repos, for example livna.org and the freshrpms repos are meant to have issues working together (something about renaming system files). I've also found occasionally that dependencies can be problematic for some packages.

Rgds

jschiwal 08-01-2006 05:13 AM

Use the rpmbuild command to build an RPM from the source rpm. E.G.: "rpmbuild -ba package.spec"
There are several options, such as "-bp" to just apply the patches, and "-bi" to build a package and install it.

See the "rpmbuild" man-page for details.

A source RPM will install a tarball in the <rpmbase>/SOURCES/ directory. It will also install patches in the same directory. Also, a package.spec file is installed in <rpmbase>/SPECS/ directory.

The source RPM will contain an earlier version of the source, and patches to make it current.

prajasekarbe 08-01-2006 05:33 AM

which is better
 
Quote:

Originally Posted by billymayday
RPMs are generally easier to manage, and as mentioned above, they are easier to remove, and also to keep track of updates (especially if you use something like yum to update), because rpm maintains a database of what's installed.

However, there are two downsides to rpms that come to mind. First, not every piece of software is in an rpm, or at least in an rpm for your distro. The other is that you are reliant on the packagers to produce updates in a timely fashion. You may, for example, want to update something like clamav as soon as it is released, rather than wait a week or two for a new package.

Some rpm's also have quirks. There is, supposedly and issue of compatability between some repos, for example livna.org and the freshrpms repos are meant to have issues working together (something about renaming system files). I've also found occasionally that dependencies can be problematic for some packages.

Rgds



hi

which type of installation is better.either installed by rpm or tar
package.????????

regards.

dalek 08-01-2006 06:03 PM

Quote:

Originally Posted by prajasekarbe
hi

which type of installation is better.either installed by rpm or tar
package.????????

regards.

If you use a rpm based distro, then use the rpm package. If you use the tarball you may have to configure it and compile it too.

:D :D :D :D :D

prajasekarbe 08-08-2006 09:56 AM

source rpm install
 
Quote:

Originally Posted by dalek
RPM = Redhat Package Manager. Usually used by Mandrake and Redhat for software. I think the src.rpm is a kernel but not 100% sure.

Tar.gz is a gunzipped and tarred file. Tar takes a lot of files and makes them into one big file. The gzip compresses the file. Always start at the end when undoing. Gunzip it first then untar it. That leaves you with the files in a directory. Never change the name of the file. I did that once. It was a mess. There are also bz2 files. Just a newer version sort of.

There will usually be a read me in there when you get it untarred that will list the details to install. Kind of varies depending on what it is. Have to compile the kernel or make then make install for software.

Someone else may have a good link that will give better info. This should clear the water a liitle bit.

Oh, tar is Tape Archive. Used to backup files to a tape. Looks like a big cassette.

Later

:D :D :D :D



hai

how to install the source rpm (src.rpm). help me...........

rds.
:study:

dalek 08-08-2006 03:47 PM

I have never done a source install like that. Since I use Gentoo, portage takes care of that for me. I'm sure someone here knows how to do it though.

:D :D :D :D :D


All times are GMT -5. The time now is 09:24 PM.