• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 266
  • Last Modified:

Distribution neutral RPM?

Hi.
I have a question about RPM and how to build them. I created an RPM for my Mandrake9.2, but alas there are other rpm-based distributions out there. Is there a way to make a distribution-neutral rpm that can be installed on any system?
The rpm I'm trying to package is mostly Python, but there are some C involved.

Can I perhaps make a SRPM? Can this be installed on a machine without devel-tools then?
I can't be the only one wanting to do this, is there a way?

So many questions...

Thanks in advance

Haeger
0
haeger
Asked:
haeger
1 Solution
 
jlevieCommented:
An RPM package is distribution neutral, it is the contents of the rpm that can be distro & version specific. I don't know what your package does or how sensitive it is to differences in Linux kernels, Glibc versions (or other libs), or locations of things. These can and will vary according to distro and version. Also it may matter what version of Python is on the system, with respect to a pre-built binary rpm.

Yes, you could and should also make available an SRPM even if you intend to provide disto/version specific RPM pacakges. There are times when a user will need to build their own copy because of local changes to a particular distro/version. Since you have C code in the package anyone wanting to use the SRPM must have developer support on their system.
0
 
sunnycoderCommented:
Hi Haeger,

I am not sure but I think SPECS in rpm can handle this issue ... Here is one of the best resources for rpm building
http://www.rpm.org/max-rpm/

Check chapter 9 - Multi-architecture/operating system Support

"It has always been a fact of life for software developers that their applications may need to be ported to multiple operating systems. It is also becoming more common that a particular operating system might run on several different platforms, or architectures.

RPM's ability to support multiple architectures and operating systems makes it easy to build the same package for many OS/platform combinations. A package may be configured to build on only one architecture/OS combination, or on several. The only limitation is the application's portability. "

And yes, if you distribute C source code, users will need gcc and libraries used in the code.

Good luck
sunnycoder
0

Featured Post

[Webinar] Kill tickets & tabs using PowerShell

Are you tired of cycling through the same browser tabs everyday to close the same repetitive tickets? In this webinar JumpCloud will show how you can leverage RESTful APIs to build your own PowerShell modules to kill tickets & tabs using the PowerShell command Invoke-RestMethod.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now