<?xml version="1.0" encoding="iso-8859-1"?>
-<chapter id="sec-installing-bin-distrib">
+<chapter id="installing-bin-distrib">
<title>Installing GHC</title>
<indexterm><primary>binary installations</primary></indexterm>
<indexterm><primary>installation, of binaries</primary></indexterm>
so you've got to bootstrap it somehow. We provide machine-generated
C-files-from-Haskell for this purpose, but it's really quite a pain to
use them. If you must build GHC from its sources, using a
-binary-distributed GHC to do so is a sensible way to proceed. For the
-other <literal>fptools</literal> programs, many are written in
-Haskell, so binary distributions allow you to install them without
-having a Haskell compiler.)
+binary-distributed GHC to do so is a sensible way to proceed.)
</para>
<para>This guide is in several parts:</para>
<itemizedlist>
<listitem>
<para> Installing on Unix-a-likes (<xref
- linkend="sec-unix-a-likes"/>). </para>
+ linkend="unix-a-likes"/>). </para>
</listitem>
<listitem>
<para> Installing on Windows (<xref
- linkend="sec-install-windows"/>). </para>
+ linkend="install-windows"/>). </para>
</listitem>
<listitem>
<para> The layout of installed files (<xref
- linkend="sec-install-files"/>). You don't need to know this to
+ linkend="install-files"/>). You don't need to know this to
install GHC, but it's useful if you are changing the
implementation.</para>
</listitem>
</itemizedlist>
- <sect1 id="sec-unix-a-likes"><title>Installing on Unix-a-likes</title>
+ <sect1 id="unix-a-likes"><title>Installing on Unix-a-likes</title>
<sect2>
<title>When a platform-specific package is available</title>
- <para>For certain platforms, we provide GHC binaries packaged
+ <para>Most common OSes provide GHC binaries packaged
using the native package format for the platform. This is
likely to be by far the best way to install GHC for your
platform if one of these packages is available, since
system normally provides a way to uninstall the package at a
later date.</para>
- <para>We generally provide the following packages:</para>
-
- <variablelist>
- <varlistentry>
- <term>RedHat or SuSE Linux/x86</term>
- <listitem>
- <para>RPM source & binary packages for RedHat and SuSE
- Linux (x86 only) are available for most major
- releases.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Debian Linux/x86</term>
- <listitem>
- <para>Debian packages for Linux (x86 only), also for most
- major releases.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>FreeBSD/x86</term>
- <listitem>
- <para>On FreeBSD/x86, GHC can be installed using either
- the ports tree (<literal>cd /usr/ports/lang/ghc && make
- install</literal>) or from a pre-compiled package
- available from your local FreeBSD mirror.</para>
- </listitem>
- </varlistentry>
- </variablelist>
-
- <para>Other platform-specific packages may be available, check
- the GHC download page for details.</para>
+ <para>Check the <ulink url="http://www.haskell.org/ghc/distribution_packages.html">distribution packages</ulink> page to see if there is a package available for your platform.</para>
</sect2>
<sect2>
</para>
<para>
-Binary distributions come in “bundles,” one bundle per file called
-<literal><replaceable>bundle</replaceable>-<replaceable>platform</replaceable>.tar.gz</literal>. (See the building guide for the definition of a platform.) Suppose that you untar a binary-distribution bundle, thus:
+Binary distributions come in “bundles,” called
+<literal>ghc-<replaceable>version</replaceable>-<replaceable>platform</replaceable>.tar.bz2</literal>. (See the <ulink url="http://hackage.haskell.org/trac/ghc/wiki/Building">building guide</ulink> for the definition of a platform.) Suppose that you untar a binary-distribution bundle, thus:
</para>
<para>
-
<screen>
% cd /your/scratch/space
-% gunzip < ghc-x.xx-sun-sparc-solaris2.tar.gz | tar xvf -</screen>
-
+% bunnzip2 < ghc-<replaceable>version</replaceable>-<replaceable>platform</replaceable>.tar.bz2 | tar xvf -</screen>
</para>
<para>
<listitem>
<para>
the raw material from which the <literal>Makefile</literal>
-will be made (<xref linkend="sec-install"/>).
+will be made (<xref linkend="install"/>).
</para>
</listitem></varlistentry>
<varlistentry>
<term><literal>configure</literal></term>
<listitem>
<para>
-the configuration script (<xref linkend="sec-install"/>).
+the configuration script (<xref linkend="install"/>).
</para>
</listitem></varlistentry>
<varlistentry>
</variablelist>
</para>
-<sect3 id="sec-install">
+<sect3 id="install">
<title>Installing</title>
<para>
<para>
Once done, test your “installation” as suggested in
-<xref linkend="sec-GHC-test"/>. Be sure to use a <literal>-v</literal>
+<xref linkend="GHC-test"/>. Be sure to use a <literal>-v</literal>
option, so you can see exactly what pathnames it's using.
If things don't work as expected, check the list of known pitfalls in
-the building guide.
+the <ulink url="http://hackage.haskell.org/trac/ghc/wiki/Building">building guide</ulink>.
</para>
</listitem>
</sect3>
-<sect3 id="sec-GHC-test">
+<sect3 id="GHC-test">
<title>Testing that GHC seems to be working
</title>
</sect1>
-<sect1 id="sec-install-windows"><title>Installing on Windows</title>
+<sect1 id="install-windows"><title>Installing on Windows</title>
<para>
Getting the Glasgow Haskell Compiler (post 5.02) to run on Windows platforms is
-a snap: the Installshield does everything you need.
+a snap: the installer does everything you need.
</para>
<sect2><title>Installing GHC on Windows</title>
To install GHC, use the following steps:
</para>
<itemizedlist>
-<listitem><para>Download the Installshield <filename>setup.exe</filename>
-from the GHC download page
+<listitem><para>Download the installer
+from the
<ulink
-url="http://www.haskell.org/ghc">haskell.org</ulink>.
+url="http://www.haskell.org/ghc/download.html">GHC download page</ulink>.
</para></listitem>
-<listitem><para>Run <filename>setup.exe</filename>.
+<listitem><para>Run the installer.
On Windows, all of GHC's files are installed in a single directory.
-If you choose ``Custom'' from the list of install options, you will be given a
-choice about where this directory is; otherwise it will be installed
-in <filename>c:/ghc/<replaceable>ghc-version</replaceable></filename>.
-The executable binary for GHC will be installed in the <filename>bin/</filename> sub-directory
-of the installation directory you choose.
-</para>
-<para>(If you have already installed the same version of GHC, Installshield will offer to "modify",
-or "remove" GHC. Choose "remove"; then run <filename>setup.exe</filename> a
-second time. This time it should offer to install.)
+You can override it, but by default this directory is
+<filename>c:/ghc/<replaceable>ghc-version</replaceable></filename>.
+The executable binary for GHC will be installed in the
+<filename>bin/</filename> sub-directory of the installation directory.
+If you want to invoke GHC from a command line, add this
+to your PATH environment variable.
</para>
<para>
-When installation is complete, you should find GHCi and the GHC documentation are
-available in your Start menu under "Start/Programs/Glasgow Haskell Compiler".
+When installation is complete, you should find GHCi and the GHC
+documentation are available in your Start menu under
+"Start/All Programs/GHC/<replaceable>ghc-version</replaceable>".
</para>
</listitem>
<listitem><para>
-The final dialogue box from the install process reminds you where the GHC binary
-has been installed (usually <filename>c:/ghc/<replaceable>ghc-version</replaceable>/bin/</filename>.
-If you want to invoke GHC from a command line, add this
-to your PATH environment variable.
-</para></listitem>
-
-<listitem><para>
GHC needs a directory in which to create, and later delete, temporary files.
It uses the standard Windows procedure <literal>GetTempPath()</literal> to
find a suitable directory. This procedure returns:
..
bash$ ./main
Hello, world!
-bash$ </screen>
+bash$</screen>
</listitem>
</itemizedlist>
else, to install and run GHC.
</para>
<para>
-An installation of GHC requires about 140M of disk space.
+An installation of GHC requires about 340M of disk space.
To run GHC comfortably, your machine should have at least
64M of memory.
</para>
<sect2><title>Moving GHC around</title>
<para>
-At the moment, GHC installs in a fixed place (<filename>c:/ghc/ghc-x.yy</filename>,
-but once it is installed, you can freely move the entire GHC tree just by copying
-the <filename>ghc-x.yy</filename> directory. (You may need to fix up
-the links in "Start/Programs/Glasgow Haskell Compiler" if you do this.)
+Once GHC is installed, you can freely move the entire GHC tree just by copying
+the <filename>c:/ghc/<replaceable>ghc-version</replaceable></filename>
+directory. (You will need to fix up
+the links in "Start/All Programs/GHC/<replaceable>ghc-version</replaceable>"
+if you do this.)
</para>
<para>
It is OK to put GHC tree in a directory whose path involves spaces. However,
<varlistentry>
<term>I'm having trouble with symlinks.</term>
<listitem>
- <para>Symlinks only work under Cygwin (<xref linkend="sec-install" />), so binaries not linked to the Cygwin
+ <para>Symlinks only work under Cygwin (<xref linkend="install" />),
+ so binaries not linked to the Cygwin
DLL, in particular those built for Mingwin, will not work with
symlinks.</para>
</listitem>
</listitem>
</varlistentry>
</variablelist>
-
-<!-- doesn't add much value any longer; leave out [sof 7/2002].
-<para>
-Further information on using GHC under Windows can be found in <ulink
-url="http://www.dcs.gla.ac.uk/~sof/ghc-win32.html">Sigbjørn Finne's
-pages</ulink>. Note: ignore the installation instructions, which are rather
-out of date; the <emphasis>Miscellaneous</emphasis> section at the bottom of
-the page is of most interest, covering topics beyond the scope of this
-manual.
-</para>
--->
</sect2>
</sect1>
-<sect1 id="sec-install-files"><title>The layout of installed files</title>
+<sect1 id="install-files"><title>The layout of installed files</title>
<para>
This section describes what files get installed where. You don't need to know it