The main question is whether or not the Haskell compiler (GHC) runs on your platform.
A ``platform'' is a architecture/manufacturer/operating-system combination, such as sparc-sun-solaris2. Other common ones are alpha-dec-osf2, hppa1.1-hp-hpux9, i386-unknown-linux, i386-unknown-solaris2, i386-unknown-freebsd, i386-unknown-cygwin32, m68k-sun-sunos4, mips-sgi-irix5, sparc-sun-sunos4, sparc-sun-solaris2, powerpc-ibm-aix.
Bear in mind that certain ``bundles'', e.g. parallel Haskell, may not work on all machines for which basic Haskell compiling is supported.
Some libraries may only work on a limited number of platforms; for example, a sockets library is of no use unless the operating system supports the underlying BSDisms.
The GHC hierarchy of Porting Goodness: (a) Best is a native-code generator; (b) next best is a ``registerised'' port; (c) the bare minimum is an ``unregisterised'' port. (``Unregisterised'' is so terrible that we won't say more about it).
The native code generator is currently non-functional (as of GHC version 4.06), but we're actively working on getting it going again.
We use Sparcs running Solaris 2.7 and x86 boxes running FreeBSD and Linux, so those are the best supported platforms, unsurprisingly.
Here's everything that's known about GHC ports. We identify platforms by their ``canonical'' CPU/Manufacturer/OS triple.
Currently non-working. The last working version (osf[1-3]) is GHC 3.02. A small amount of porting effort will be required to get Alpha support into GHC 4.xx, but we don't have easy access to machines right now, and there hasn't been a massive demand for support, so Alphas remain unsupported for the time being. Please get in touch if you either need Alpha support and/or can provide access to boxes.
Probably works with minor tweaks, hasn't been tested for a while.
Fully supported, including native-code generator.
Works registerised. No native-code generator.
GHC works registerised. You must have GCC 2.7.x or later. NOTE about glibc versions: GHC binaries built on a system running glibc 2.0 won't work on a system running glibc 2.1, and vice version. In general, don't expect compatibility between glibc versions, even if the shared library version hasn't changed.
GHC works registerised. These systems provide ready-built packages of GHC, so if you just need binaries you're better off just installing the package.
Fully supported under Win9x/NT, including a native code generator. Requires the cygwin32 compatibility library and a healthy collection of GNU tools (i.e., gcc, GNU ld, bash etc.).
Port currently doesn't work, needs some minimal porting effort. As usual, we don't have access to machines and there hasn't been an overwhelming demand for this port, but feel free to get in touch.
Port currently doesn't work, needs some minimal porting effort. As usual, we don't have access to machines and there hasn't been an overwhelming demand for this port, but feel free to get in touch.
Various other systems have had GHC ported to them in the distant past, including various Motorola 68k boxes. The 68k support still remains, but porting to one of these systems will certainly be a non-trivial task.
Unless you hear otherwise, the other tools work if GHC works.