Hey, There are several programs that I'd like to make SuSE RPMs for (not part of the SuSE distro). I'm sorta new at making RPMs, so I'm wondering a few things... Right now, I'm making an RPM by taking a tarball and doing: rpm -tb tarballname.tar.gz This makes a "noarch" RPM that works fine on my system. (Note: Using 7.3 Pro on an i686 system) But will that RPM work on another person's SuSE system? I'm referring only to general programs, not anything that's "vital" to the linux system like the kernel or gcc... Should I be specifying a target installation place so that it matches where SuSE installs programs? Should I be specifying i686 when building the tarball? Or will the "noarch" work on an i386 (for example). Can I specify i386 when building the RPM to make an i386 RPM, or will that not work since I'm using an i686 system? Will there be any issues with an 8.0 user trying to use these RPMs? Again, it's just for some general programs, not vital stuff (ICQ programs, games, things like that). Yes, I'm obviously not to familiar with these things. But I've got a 100Mb space on my web host, and I've determined I'll only need about 20Mb of it at the most. Which leaves plenty of space to distribute some RPMs for SuSE users. Later, Joe "Flame" Sullivan -------------------------------------------------------------------------------------- Firechild Web Design and CGI Scripting Services http://firechild.net Secretary, World Association of Internet Marketing http://waim.org Webmaster, Amerikanska - For Americans In Sweden http://amerikanska.com Meta-editor, Open Directory Project http://dmoz.org ---------------------------------------------------------------------------------------
On Wednesday 26 June 2002 2:56 pm, Joe Sullivan wrote:
There are several programs that I'd like to make SuSE RPMs for (not part of the SuSE distro).
I'm sorta new at making RPMs, so I'm wondering a few things...
Have you read? http://www.rpm.org/max-rpm/ Very good.
Right now, I'm making an RPM by taking a tarball and doing: rpm -tb tarballname.tar.gz
From the manual I would guess that it would look inside that tarball for a spec file. Does that actually give you a finished RPM? What about an SRPM?
But will that RPM work on another person's SuSE system? I'm referring only to general programs, not anything that's "vital" to the linux system like the kernel or gcc...
Generally I try to build on the same kind of system as that which it will eventually run on. The only thing to be concerned about is file hierarchy. I would recommend looking at the output of rpm -qlp <your rpm>.rpm to see if it writes to any bizarre places before actually installing it. Your %files in your spec file should tell you which files you are picking up. You could make your RPM relocatable, but I haven't tried that. Jon
On Wed, Jun 26, 2002 at 03:56:59PM +0200, Joe Sullivan wrote:
Hey,
There are several programs that I'd like to make SuSE RPMs for (not part of the SuSE distro).
I'm sorta new at making RPMs, so I'm wondering a few things...
Right now, I'm making an RPM by taking a tarball and doing: rpm -tb tarballname.tar.gz
This makes a "noarch" RPM that works fine on my system.
It just so happens that the program you're trying to make an RPM of is architecture independent, other you would have found a "i386" RPM.
(Note: Using 7.3 Pro on an i686 system)
But will that RPM work on another person's SuSE system? I'm referring only to general programs, not anything that's "vital" to the linux system like the kernel or gcc...
It should work, as long as that other person Suse version is the same as yours. It will most likely work on a different version as well, as long as the dependencies for that RPM are satisfied by the other version too. For example, an RPM built on Suse 7.2 would most likely work fine on a Suse 7.3 system, since very little is likely to have changed in terms of architecture. But don't expect a Suse 7.3 RPM to always work with say, a Suse 6.2 system. A lot will have changed between the 2.
Should I be specifying a target installation place so that it matches where SuSE installs programs?
No.
Should I be specifying i686 when building the tarball? Or will the "noarch" work on an i386 (for example). Can I specify i386 when building the RPM to make an i386 RPM, or will that not work since I'm using an i686 system?
Sometimes (especially with kernels) you need to specify the architecture type. With most other RPMs, you don't need to.
Will there be any issues with an 8.0 user trying to use these RPMs? Again, it's just for some general programs, not vital stuff (ICQ programs, games, things like that).
See above. -- Anand Buddhdev http://anand.org
participants (3)
-
Anand Buddhdev
-
Joe Sullivan
-
Jonathan Lim