X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=docs%2Finstalling.vsgml;h=0ce9476890e81bd3044313f85475f94a3ca90f08;hb=b66561ec39d76e730ab8de8ff84d5c450c93e809;hp=467c6b8aba1f94b61c69ed1b7bae142c83664fc8;hpb=28a7a262a5fb31e0e4404ee3ff4cece7204f6817;p=ghc-hetmet.git diff --git a/docs/installing.vsgml b/docs/installing.vsgml index 467c6b8..0ce9476 100644 --- a/docs/installing.vsgml +++ b/docs/installing.vsgml @@ -2,7 +2,7 @@
Building and Installing the Glasgow Functional Programming Tools Suite -Version 3.01 +Version 3.02 <author>The GHC Team, Department of Computing Science, University of Glasgow, @@ -10,7 +10,7 @@ Glasgow, Scotland, G12 8QQ. Email: @glasgow-haskell-{users,bugs}@@dcs.gla.ac.uk@ -<date>November 1997</date> +<date>April 1998</date> <abstract> @@ -18,9 +18,6 @@ This guide is intended for people who want to install or modify programs from the Glasgow @fptools@ suite (as distinct from those who merely want to <em/run/ them). -The whole install-and-make system was completely re-done between GHC -2.01 and 2.02, so it will be worth your while to re-read this guide -even if you have read earlier versions. </abstract> <toc> @@ -83,10 +80,9 @@ confidence will work well by having tested it (more) thoroughly. Source-only distributions are either bugfix releases or snapshots of current state of development. The release has undergone some testing. -Source releases of 2.0x can be compiled up using 2.07 (or subsequent -bugfix releases) or the Good Old Compiler, GHC~0.29. Compiling with -0.29 is recommended if you're a performance junkie, as 0.29 (still) -generates zippier code, but GHC~2.0x is catching up. +Source releases of 3.xx can be compiled up using 2.10 or later. +Compiling with version 0.29 won't work any more: we use Haskell 1.4 +features in the compiler. <tag/Build GHC from intermediate C @.hc@ files<nidx/hc files/:/ You need a working GHC to use a source distribution. What if you don't @@ -357,10 +353,9 @@ Concurrent/Parallel Haskell probably won't work (yet). <nidx>m68k-next-nextstep3: concurrent---no</nidx> <nidx>m68k-next-nextstep3: parallel---no</nidx> -<tag/m68k-sun-sunos4 (Sun3):/ -<nidx>m68k-sun-sunos4: registerised port</nidx> -GHC 2.0x hasn't been tried on a Sun3. GHC~0.26 worked registerised. -No native-code generator. +<tag/m68k-sun-sunos4 (Sun3):/ <nidx>m68k-sun-sunos4: registerised +port</nidx> GHC 2.0x and 3.0x haven't been tried on a Sun3. GHC~0.26 +worked registerised. No native-code generator. Concurrent/Parallel Haskell probably don't work (yet). <nidx>m68k-sun-sunos4: concurrent---no</nidx> @@ -641,8 +636,8 @@ Hello, world! Some simple-but-profitable tests are to compile and run the notorious @nfib@<ncdx/nfib/ program, using different numeric types. Start with @nfib :: Int -> Int@, and then try @Integer@, @Float@, @Double@, -@Rational@ and maybe @Complex Float@. Code for this is distributed in -@ghc/misc/examples/nfib/@ in a source distribution. +@Rational@ and perhaps the overloaded version. Code for this is +distributed in @ghc/misc/examples/nfib/@ in a source distribution. For more information on how to ``drive'' GHC, either do @ghc -help@ or consult the User's Guide (distributed in several pre-compiled formats @@ -1821,22 +1816,41 @@ can't find them, please ask. Assuming you've got them, unpack them on top of a fresh source tree. Then follow the `normal' instructions in Section~<ref id="sec:building-from-source" name="Buiding From Source"> for setting -up a build tree and configuring it. The only extra thing to remember -when booting from @.hc@ files is to add the following line to the -@build.mk@ file: +up a build tree. When you invoke the configure script, you'll have +to tell the script about your intentions: <tscreen><verb> -GhcWithHscBuiltViaC=YES +foo% ./configure --enable-hc-boot +</verb></tscreen> +<ncdx/--enable-hc-boot/ +<ncdx/--disable-hc-boot/ + +Assuming it configures OK and you don't need to create @mk/build.mk@ +for any other purposes, the next step is to proceed with a @make boot@ +followed by @make all@. At the successful completion of @make all@, +you should end up with a binary of the compiler proper, +@ghc/compiler/hsc@, plus archives (but no @.hi@ files!) of the prelude +libraries. To generate the Prelude interface files (and test drive the +bootstrapped compiler), re-run the @configure@ script, but this time +witout the @--enable-hc-boot@ option. After that re-create the +contents of @ghc/lib@: + +<tscreen><verb> +foo% ./configure + .... +foo% cd ghc/lib +foo% make clean +foo% make boot +foo% make all </verb></tscreen> -<ncdx/GhcWithHscBuiltViaC/ -and proceed with doing a @make boot@ followed by a @make all@. That's the mechanics of the boot process, but, of course, if you're trying to boot on a platform that is not supported and significantly `different' from any of the supported ones, this is only the start of the adventure...(ToDo: porting tips - stuff to look out for, etc.) + <sect>Known pitfalls in building Glasgow Haskell <label id="sec:build-pitfalls"> <nidx>problems, building</nidx>