[Haskell-cafe] Library Process (was Building "production stable"
software in Haskell)
sven.panne at aedion.de
Sun Sep 23 07:03:27 EDT 2007
On Thursday 20 September 2007 16:33, David Menendez wrote:
> Does RPM, etc., deal with the fact that Haskell library installations
> are specific to a particular platform?
It depends what you mean with "deal": If it is only making sure that a given
binary library RPM matches the installed Haskell system, yes.
> If I install GHC and some library, and later install Hugs or a later
> GHC, how easy is it to make sure the library is available to the new
This is asking for much more, and the general answer for all mature packaging
systems I know is: This will never be the case for *binary* packages. The
simple reason is that for rebuilding packages (this is basically what you are
asking for), you have different (and typically *many*) more dependencies.
This is why e.g. RPM differentiates between "Requires" (i.e. normal runtime
dependecies) and "Build-Requires" (dependencies for building an RPM).
Although this situation is far from perfect, it is a direct consequence of the
fact that there is no such thing as a "standard Haskell ABI" which is shared
between all implementations and versions of them. The situation in C is much
better (because it is much easier there), but even C++ suffered from ABI
problems for several years on most platforms.
More information about the Haskell-Cafe