[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: SUSE Users: Build your RPM!
From: |
Alex Lancaster |
Subject: |
Re: SUSE Users: Build your RPM! |
Date: |
07 Jul 1999 18:36:02 -0600 |
>>>>> "PJ" == Paul E Johnson <address@hidden> writes:
[...]
PJ> I do see some problems naming of rpms for different distributions
PJ> because it might become confusing. We might have to introduce the
PJ> term "redhat" and "suse" into the name of the package itself,
PJ> which seems an ugly prospect. Or the SUSE version, at minimum,
PJ> must bear the name of the distribution that makes it obvious.
RPM .spec files have the `Distribution:' tag that we can use for this
purpose.
PJ> I'm not quite so negative as Alex about the possibility that a
PJ> single RPM can serve both distributions. It is not pure luck that
PJ> you can "fiddle" suse to make the rpm work. There are a lot of
PJ> similarities.
PJ> I'd like to try to understand better the problems and see if a
PJ> common RPM binary might not work. Some of the problems we faced
PJ> are dissolving themselves. For example, on RedHat egcs and gcc
PJ> are now the same thing, and so there is no more need for that
PJ> fussy distinction. When we build new RPMS, I'll get rid of it.
PJ> Perhaps if a suse user tells me what they see concerning egcs and
PJ> gcc and xpm-devel when they do "rpm -qa" I'd understand
PJ> better. (don't send to whole mailing list, just me).
Well, there are similarities to be sure, especially the `base'
packages, which are pretty standard between Redhat and SuSE.
Unfortunately, where the distributions diverge are in the
less-standard `add-on' packages, some of which are exactly what Swarm
relies on.
Take, for example the `libpng' package, a Swarm dependency package:
* Redhat 6.0 for i386 splits libpng into two packages,
libpng-1.0.3-2.i386.rpm:
/usr/doc/libpng-1.0.3
/usr/doc/libpng-1.0.3/CHANGES
/usr/doc/libpng-1.0.3/README
/usr/doc/libpng-1.0.3/TODO
/usr/doc/libpng-1.0.3/example.c
/usr/doc/libpng-1.0.3/libpng.txt
/usr/lib/libpng.so.2.1.0.3
/usr/man/man5/png.5
and
libpng-devel-1.0.3-2.rpm:
/usr/include/png.h
/usr/include/pngconf.h
/usr/lib/libpng.a
/usr/lib/libpng.so
/usr/man/man3/libpng.3
/usr/man/man3/libpng.so.2.1.0.3
/usr/man/man3/libpngpf.3
* Whereas SuSE 6.0 Beta for i386, has a single package:
libpng-2.1.0.2-24 RPM for i386:
/usr/X11R6/include/png.h
/usr/X11R6/include/pngconf.h
/usr/X11R6/lib/libpng.a
/usr/X11R6/lib/libpng.so
/usr/X11R6/lib/libpng.so.2.1.0.2
/usr/X11R6/man/man3/libpng.3.gz
/usr/X11R6/man/man3/libpngpf.3.gz
/usr/X11R6/man/man5/png.5.gz
/usr/doc/packages/libpng
/usr/doc/packages/libpng/CHANGES
/usr/doc/packages/libpng/README
/usr/doc/packages/libpng/TODO
/usr/doc/packages/libpng/libpng.txt
Differences:
1) You'll notice that the filesystem layout for the SuSE distribution
is completely different from the Redhat one. Which means that a Swarm
binary package which compile-in these paths on one distribution, may
(or may not) work, depending on how your dynamic linker is set up, but
most importantly is not *guaranteed* to work (which is the whole point
of packaging, after all).
2) The Redhat package contains the symlink:
/usr/lib/libpng.so -> /usr/lib/libpng.so.2.1.0.3
*only* in the libpng-devel package, *not* the standard libpng package.
So you your package dependencies in the RPM .spec need to be
different, for Redhat you need:
Requires: libpng
Requires: libpng-devel
but SuSE would only need:
Requires: libpng
There are attempts in the GNU/Linux community to develop something
called the `Linux Standard Base' (a set of standard packages and
package naming conventions), but it's a long way off just now, and
it's likely only to standardize the truly `base' packages (such as the
kernel, binutils, glibc etc.) I can't see a point in the near future
in which something like `libpng' will be standardized.
That said, it might be possible to still maintain a common rpm `.spec'
file with some clever conditional logic which can be used to build
packages on SuSE and Redhat.
--- Alex
--
Alex Lancaster | e-mail: address@hidden
Swarm Program | web: http://www.santafe.edu/~alex
Santa Fe Institute | tel: +1-(505) 984-8800 (ext 242)
-------------------------------------------------------------------
==================================
Swarm-Support is for discussion of the technical details of the day
to day usage of Swarm. For list administration needs (esp.
[un]subscribing), please send a message to <address@hidden>
with "help" in the body of the message.
- More problems with Suse 6.1, Benedikt Stefansson, 1999/07/05
- Re: More problems with Suse 6.1, Marcus G. Daniels, 1999/07/05
- Re: More problems with Suse 6.1 - Solved!, Benedikt Stefansson, 1999/07/06
- Re: More problems with Suse 6.1 - Solved!, Marcus G. Daniels, 1999/07/06
- SuSE gcc=egcs, EditPlus for Windows, Catherine Dibble, 1999/07/06
- Re: More problems with Suse 6.1 - Solved!, Alex Lancaster, 1999/07/06
- SUSE Users: Build your RPM! (was Re: More problems with Suse 6.1 - Solved!, Paul E. Johnson, 1999/07/06
- Re: SUSE Users: Build your RPM!,
Alex Lancaster <=
- Re: More problems with Suse 6.1 - Solved!, Jan Kreft, 1999/07/07
- Re: More problems with Suse 6.1 - Solved!, Matthew Aylward, 1999/07/08
Re: More problems with Suse 6.1, Matthew Aylward EG201 G219 SL CKR, 1999/07/06