Changes between Version 4 and Version 5 of Building/KnownProblems


Ignore:
Timestamp:
Jan 8, 2007 11:04:57 AM (9 years ago)
Author:
simonpj
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Building/KnownProblems

    v4 v5  
    1 
    2 
    3 = Known pitfalls in building Glasgow Haskell =
    4 
    5 WARNINGS about pitfalls and known "problems":
    6 
    7  1. One difficulty that comes up from time to time is running out of space
    8     in {{{TMPDIR}}}.  (It is impossible for the configuration stuff to
    9     compensate for the vagaries of different sysadmin approaches to temp
    10     space.)
    11     [[br]]
    12     The quickest way around it is {{{setenv TMPDIR /usr/tmp}}} or
    13     even {{{setenv TMPDIR .}}} (or the equivalent incantation with your shell
    14     of choice).
    15     [[br]]
    16     The best way around it is to say
    17 {{{
    18 export TMPDIR=<dir>
    19 }}}
    20     in your {{{build.mk}}} file.  Then GHC and the other
    21     tools will use the appropriate directory in all cases.
    22  2. You may occasionally see a warning from the C compiler when compiling some
    23     Haskell code, eg. "warning: assignment from
    24     incompatible pointer type".  These are usually harmless, but it's a good idea to
    25     report it on the mailing list so that we can fix it.
    26  3. Similarly, {{{ar}}}chiving warning messages like the following are not
    27     a problem:
    28 {{{
    29 ar: filename GlaIOMonad__1_2s.o truncated to GlaIOMonad_
    30 ar: filename GlaIOMonad__2_2s.o truncated to GlaIOMonad_
    31 ...
    32 }}}
    33  4. GHC's sources go through {{{cpp}}} before being compiled, and {{{cpp}}} varies
    34     a bit from one Unix to another.  One particular gotcha is macro calls
    35     like this:
    36 {{{
    37 SLIT("Hello, world")
    38 }}}
    39     Some {{{cpp}}}s treat the comma inside the string as separating two macro
    40     arguments, so you get
    41 {{{
    42 :731: macro `SLIT' used with too many (2) args
    43 }}}
    44     Alas, {{{cpp}}} doesn't tell you the offending file!
    45     Workaround: don't put weird things in string args to {{{cpp}}} macros.
    46 
     1This page has become the [wiki:Building/FAQ Building Guide FAQ].