Go to the first, previous, next, last section, table of contents.

Bundle structure

Binary distributions come in "bundles," one bundle per file called `<bundle>-<platform>.tar.gz'. (See Section See section What machines the Glasgow tools run on for what a platform is.) Suppose that you untar a binary-distribution bundle, thus:

  % cd /your/scratch/space
  % gunzip < ghc-x.xx-sun-sparc-solaris2.tar.gz | tar xvf -
Then you should find a single directory, `fptools', with the following structure:
`Makefile.in'
the raw material from which the `Makefile' will be made (section See section Installing).
`configure'
the configuration script (section See section Installing).
`README'
Contains this file summary.
`INSTALL'
Contains this description of how to install the bundle.
`ANNOUNCE'
The announcement message for the bundle.
`NEWS'
release notes for the bundle -- a longer version of `ANNOUNCE'. For GHC, the release notes are contained in the User Guide and this file isn't present.
`bin/<platform>'
contains platform-specific executable files to be invoked directly by the user. These are the files that must end up in your path.
`lib/<platform>'
contains platform-specific support files for the installation. Typically there is a subdirectory for each `fptools' project, whose name is the name of the project with its version number. For example, for GHC there would be a sub-directory `ghc-x.xx/' where `x.xx' is the version number of GHC in the bundle. These sub-directories have the following general structure:
`libHS.a' etc:
supporting library archives.
`ghc-iface.prl' etc:
support scripts.
`import/'
Interface files (`.hi') for the prelude.
`include/'
A few C `#include' files.
`share/'
contains platform-independent support files for the installation. Again, there is a sub-directory for each `fptools' project.
`info/'
contains Emacs info documentation files (one sub-directory per project).
`html/'
contains HTML documentation files (one sub-directory per project).
`man/'
contains Unix manual pages.
This structure is designed so that you can unpack multiple bundles (including ones from different releases or platforms) into a single `fptools' directory:
  % cd /your/scratch/space
  % gunzip < ghc-x.xx-sun-sparc-solaris2.tar.gz | tar xvf -
  % gunzip < happy-x.xx-sun-sparc-sunos4.tar.gz | tar xvf -
When you do multiple unpacks like this, the top level `Makefile', `README', and `INSTALL' get overwritten each time. That's fine -- they should be the same. Likewise, the `ANNOUNCE-<bundle>' and `NEWS-<bundle>' files will be duplicated across multiple platforms, so they will be harmlessly overwritten when you do multiple unpacks. Finally, the `share/' stuff will get harmlessly overwritten when you do multiple unpacks for one bundle on different platforms.


Go to the first, previous, next, last section, table of contents.