X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fdocs%2Fusers_guide%2Finstalling.sgml;h=fdfb0782aaaae791573d73a73c52cce769b27b48;hb=142e3ace54bb7aac1945b74589c8300246960435;hp=2d15aff91bc998b4d038e33034a92645aae8ba61;hpb=3c459be810ceda7e713cbdd6317479f47af233ba;p=ghc-hetmet.git
diff --git a/ghc/docs/users_guide/installing.sgml b/ghc/docs/users_guide/installing.sgml
index 2d15aff..fdfb078 100644
--- a/ghc/docs/users_guide/installing.sgml
+++ b/ghc/docs/users_guide/installing.sgml
@@ -16,16 +16,23 @@ having a Haskell compiler.)
This guide is in several parts:
-
- Installing on Unix-a-likes ().
- Installing on Windows ().
- The layout of installed files ().
-You don't need to know this to install GHC,
-but it's useful if you are changing the implementation.
- Installing or building the documentation ().
-
-
+
+
+ Installing on Unix-a-likes ().
+
+
+ Installing on Windows ().
+
+
+ The layout of installed files (). You don't need to know this to
+ install GHC, but it's useful if you are changing the
+ implementation.
+
+ Installing on Unix-a-likes
@@ -44,10 +51,11 @@ but it's useful if you are changing the implementation.
- RedHat Linux/x86
+ RedHat or SuSE Linux/x86
- RPM source & binary packages for RedHat Linux (x86
- only) are available for most major releases.
+ RPM source & binary packages for RedHat and SuSE
+ Linux (x86 only) are available for most major
+ releases.
@@ -95,8 +103,9 @@ Binary distributions come in “bundles,” one bundle per file called
-Then you should find a single directory, fptools, with the following
-structure:
+Then you should find a single directory,
+ghc-version, with the
+following structure:
@@ -225,13 +234,6 @@ contains HTML documentation files (one
sub-directory per project).
-
-man/
-
-
-contains Unix manual pages.
-
-
@@ -239,10 +241,11 @@ contains Unix manual pages.
Installing
-OK, so let's assume that you have unpacked your chosen bundles into a
-scratch directory fptools. What next? Well, you will at least need
-to run the configureconfigure script by changing your
-directory to fptools and typing ./configure. That should convert
+OK, so let's assume that you have unpacked your chosen bundles. What
+next? Well, you will at least need to run the
+configureconfigure
+script by changing directory into the top-level directory for the
+bundle and typing ./configure. That should convert
Makefile.in to Makefile.
@@ -261,7 +264,7 @@ follow.
-To install an fptools package, you'll have to do the following:
+To install a package, you'll have to do the following:
@@ -527,43 +530,64 @@ on...Installing on Windows
-
-Getting the Glasgow Haskell Compiler (GHC) to run on Windows platforms can
-be a bit of a trying experience. It should be much easier now than in the
-past, since all the software required to use GHC is included in
-the InstallShield.
-
-
-
-An installation of GHC requires about 140M of disk space.
-To run GHC comfortably, your machine should have at least
-64M of memory.
-
-
+
+Getting the Glasgow Haskell Compiler (post 5.02) to run on Windows platforms is
+a snap: the Installshield does everything you need.
+
-Installing GHC
+Installing GHC on Windows
-
-Download the latest GHC distribution (ghc-5.02 InstallShield installer, 27M)
-from haskell.org.
-
-
-
-When the installer has completed, make sure you add the location of the
-ghc bin/ directory to your path, as directed in the
-final dialog of the installer. You need to do this in order to bring the
-various GHC binaries into scope.
-
+
+To install GHC, use the following steps:
+
+
+Download the Installshield setup.exe
+from the GHC download page
+haskell.org.
+
+
+Run setup.exe.
+(If you have a previous version of GHC, Installshield will offer to "modify",
+or "remove" GHC. Choose "remove"; then run setup.exe a
+second time. This time it should offer to install.)
+
+
+At this point you should find GHCi and the GHC documentation are
+available in your Start menu under "Start/Programs/Glasgow Haskell Compiler".
+
+
-
-You can freely move the GHC tree once you've installed it just by copying
-the ghc-x.yy directory. You might want to do this in
-order to use GHC with tools that don't like spaces in paths (GHC is
-installed in \Program Files\Glasgow Haskell
-Compiler by default.
-
+
+The final dialogue box from the install process tells you where GHC has
+been installed. If you want to invoke GHC from a command line, add this
+to your PATH environment variable. Usually, GHC installs into
+c:/ghc/ghc-5.02, though the last part of this path
+depends on which version of GHC you are installing, of course.
+You need to add c:/ghc/ghc-5.02/bin to your path if yo
+
+
+
+GHC needs a directory in which to create, and later delete, temporary files.
+It uses the standard Windows procedure GetTempPath() to
+find a suitable directory. This procedure returns:
+
+The path in environment variable TMP,
+if TMP is set.
+Otherwise, the path in environment variable TEMP,
+if TEMP is set.
+Otherwise, there is a per-user default which varies
+between versions of Windows. On NT and XP-ish versions, it might
+be:
+c:\Documents and Settings\<username>\Local Settings\Temp
+
+
+The main point is that if you don't do anything GHC will work fine;
+but if you want to control where the directory is, you can do so by
+setting TMP or TEMP.
+
+
To test the fruits of your labour, try now to compile a simple
Haskell program:
@@ -579,23 +603,36 @@ bash$ ghc -o main main.hs
bash$ ./main
Hello, world!
bash$
+
+
+
+You do not need the Cygwin toolchain, or anything
+else, to install and run GHC.
+
-OK, assuming that worked, you're all set. Go forth and write useful
-Haskell programs :-) If not, consult the installation FAQ (); if that still doesn't help then please report the problems you're experiencing (see ).
+An installation of GHC requires about 140M of disk space.
+To run GHC comfortably, your machine should have at least
+64M of memory.
+
+Moving GHC around
-Further information on using GHC under Windows can be found in Sigbjørn Finne's
-pages. Note: ignore the installation instructions, which are rather
-out of date; the Miscellaneous section at the bottom of
-the page is of most interest, covering topics beyond the scope of this
-manual.
+At the moment, GHC installs in a fixed place (c:/ghc/ghc-x.yy,
+but once it is installed, you can freely move the entire GHC tree just by copying
+the ghc-x.yy directory. (You may need to fix up
+the links in "Start/Programs/Glasgow Haskell Compiler" if you do this.)
+
+
+It is OK to put GHC tree in a directory whose path involves spaces. However,
+don't do this if you use want to use GHC with the Cygwin tools,
+because Cygwin can get confused when this happpens.
+We havn't quite got to the bottom of this, but so far as we know it's not
+a problem with GHC itself. Nevertheless, just to keep life simple we usually
+put GHC in a place with a space-free path.
-
-
-
+Installing ghc-win32 FAQ
@@ -641,6 +678,16 @@ on or rebooting may be the quickest cure.
+
@@ -656,22 +703,23 @@ the implementation.
GHC is installed in two directory trees:
-Binary directory
- known as $(bindir), holds executables that
-the user is expected to invoke. Notably,
-ghc and ghci. On Unix, this directory
-is typically something like /usr/local/bin. On Windows,
-however, this directory is always $(libdir)/bin.
-
-
-
-Library directory, known as $(libdir), holds all the
support files needed to run GHC. On Unix, this
directory is usually something like /usr/lib/ghc/ghc-5.02.
+
+Binary directory
+ known as $(bindir), holds executables that
+the user is expected to invoke.
+Notably, it contains
+ghc and ghci. On Unix, this directory
+can be anywhere, but is typically something like /usr/local/bin. On Windows,
+however, this directory must be$(libdir)/bin.
+
+
+
@@ -693,23 +741,50 @@ one wins.]
On Windows (but not Unix), if no flag is given, GHC uses a system
call to find the directory in which the running GHC executable lives, and derives
$(libdir) from that. [Unix lacks such a system call.]
+That is why $(bindir) must be $(libdir)/bin.
-Layout of the library directory
+The binary directory
-The layout of the library directory is almost identical on
-Windows and Unix, as follows: layout:
+The binary directory, $(bindir) contains user-visible
+executables, notably ghc and ghci.
+You should add it to your $PATH
+
+
+On Unix, the user-invokable ghc invokes $(libdir)/ghc-version,
+passing a suitable flag to tell ghc-version where
+$(libdir) is.
+Similarly ghci, except the extra flag --interactive is passed.
+
+
+On Win32, the user-invokable ghc binary
+is the Real Thing (no intervening
+shell scripts or .bat files).
+Reason: we sometimes invoke GHC with very long command lines,
+and cmd.exe (which executes .bat files)
+truncates them. Similarly ghci is a C wrapper program that invokes ghc --interactive
+(passing on all other arguments), not a .bat file.
+
+
+
+
+
+The library directory
+
+The layout of the library directory, $(libdir) is almost identical on
+Windows and Unix, as follows. Differences between Windows and Unix
+are noted thus [Win32 only] and are commented below.
$(libdir)/
package.conf GHC package configuration
- ghc-usage.txt Message displayed by ghc --help
+ ghc-usage.txt Message displayed by ghc ––help
bin/ [Win32 only] User-visible binaries
ghc.exe
- ghci.bat
+ ghci.exe
unlit Remove literate markup
@@ -758,24 +833,8 @@ Windows and Unix, as follows: layout:
HSlang.o not grok .a files yet)
-Note that:
+Note that:
-
-On Win32, the $(libdir)/bin directory contains user-visible binaries;
-add it to your PATH. The ghci executable is a .bat
-file which invokes ghc.
-
-The GHC executable is the Real Thing (no intervening
-shell scripts or .bat files).
-Reason: we sometimes invoke GHC with very long command lines,
-and cmd.exe (which executes .bat files)
-truncates them. [We assume people won't invoke ghci with very long
-command lines.]
-
-On Unix, the user-invokable ghc invokes $(libdir)/ghc-version,
-passing a suitable flag.
-
-$(libdir) also contains support
@@ -812,153 +871,12 @@ with the Win32 distribution of GHC.
with GHC, rather than assume some installed one.
+
-
-
-Building the documentation
-
-We use the DocBook DTD, which is widely used. Most shrink-wrapped
-distributions seem to be broken in one way or another; thanks to
-heroic efforts by Sven Panne and Manuel Chakravarty, we now support
-most of them, plus properly installed versions.
-
-
-Instructions on installing and configuring the DocBook tools follow.
-
-
-
-Installing the DocBook tools from RPMs
-
-If you're using a system that can handle RedHat RPM packages,
-you can probably use the Cygnus DocBook
-tools, which is the most shrink-wrapped SGML suite that we
-could find. You need all the RPMs except for psgml (i.e.
-docbook, jade,
-jadetex, sgmlcommon and
-stylesheets). Note that most of these RPMs are
-architecture neutral, so are likely to be found in a
-noarch directory. The SuSE RPMs also work; the
-RedHat ones don't in RedHat 6.2 (7.0 and later
-should be OK), but they are easy to fix: just make a symlink from
-/usr/lib/sgml/stylesheets/nwalsh-modular/lib/dblib.dsl
-to /usr/lib/sgml/lib/dblib.dsl.
-
-
-
-
- Installing DocBook on FreeBSD
-
- On FreeBSD systems, the easiest way to get DocBook up and
- running is to install it from the ports tree or a pre-compiled
- package (packages are available from your local FreeBSD mirror
- site).
-
- To use the ports tree, do this:
-
- $ cd /usr/ports/textproc/docproj
- $ make install
-
- This installs the FreeBSD documentation project tools, which
- includes everything needed to format the GHC
- documentation.
-
-
-
-Installing from binaries on Windows
-
-It's a good idea to use Norman Walsh's installation
-notes as a guide. You should get version 3.1 of DocBook, and note
-that his file test.sgm won't work, as it needs version
-3.0. You should unpack Jade into \Jade, along with the
-entities, DocBook into \docbook, and the DocBook
-stylesheets into \docbook\stylesheets (so they actually
-end up in \docbook\stylesheets\docbook).
-
-
-
-
-
-
-Installing the DocBook tools from source
-
-
-Jade
-
-Install OpenJade (Windows binaries are available as well as sources). If you want DVI, PS, or PDF then install JadeTeX from the dsssl
-subdirectory. (If you get the error:
-
-
-! LaTeX Error: Unknown option implicit=false' for package hyperref'.
-
-
-your version of hyperref is out of date; download it from
-CTAN (macros/latex/contrib/supported/hyperref), and
-make it, ensuring that you have first removed or renamed your old copy. If
-you start getting file not found errors when making the test for
-hyperref, you can abort at that point and proceed
-straight to make install, or enter them as
-../filename.)
-
-
-Make links from virtex to jadetex
-and pdfvirtex to pdfjadetex
-(otherwise DVI, PostScript and PDF output will not work). Copy
-dsssl/*.{dtd,dsl} and catalog to /usr/[local/]lib/sgml.
-
-
-
-
-
-DocBook and the DocBook stylesheets
-
-Get a Zip of DocBook
-and install the contents in /usr/[local/]/lib/sgml.
-
-
-Get the DocBook
-stylesheets and install in
-/usr/[local/]lib/sgml/stylesheets (thereby creating a
-subdirectory docbook). For indexing, copy or link collateindex.pl from the DocBook stylesheets archive in bin into a directory on your PATH.
-
-
-Download the ISO
-entities into /usr/[local/]lib/sgml.
-
-
-
-
-
-
-
-Configuring the DocBook tools
-
-Once the DocBook tools are installed, the configure script will detect them and set up the build system accordingly. If you have a system that isn't supported, let us know, and we'll try to help.
-
-
-
-
-
-Remaining problems
-
-If you install from source, you'll get a pile of warnings of the form
-
-DTDDECL catalog entries are not supported
-
-every time you build anything. These can safely be ignored, but if you find them tedious you can get rid of them by removing all the DTDDECL entries from docbook.cat.
-
-
-
-
-
-