recompilation check in 6.4

Simon Marlow simonmar at microsoft.com
Mon Jun 6 10:30:13 EDT 2005


Hi Serge,

On 05 June 2005 11:58, Serge D. Mechveliani wrote:

> for the first time compiles all the modules before  Foo  in
> 50 seconds.
> Then, I fix an error in  Foo.hs  and repeat  "make dm".
> 
> The  options are set so  that  ghc-6.2.2  gets to  Foo.hs  in less
> than 1 second when doing this repeated `make'.
> It does consider each module before Foo and each time decides that
> there is no need in recompilation. It keeps on going this way:
> --------
> Considering whether compilation is required for Prelude0:
> Skipping  Prelude0  ( ./Prelude0.hs, /foo/source/export/Prelude0.o )
> --------
> and so on, by the scheme
> "Considering ..XX -- {Checking usages .. --} Skipping XX".
> 
> The compiler applies this way:
> --------------------
> /foo/ghc/6.2.2/inst/bin/ghc  -fglasgow-exts
> -fallow-undecidable-instances
> -fallow-overlapping-instances -fno-warn-overlapping-patterns
> -fwarn-unused-binds -fwarn-unused-matches  -fwarn-unused-imports
> -idemotest
> -odir /home/mechvel/dm/1.02/dm/source/export
> -hidir /home/mechvel/dm/1.02/dm/source/export
> -ddump-hi-diffs
> --make DExport  -package-name dm
> --------------------
> 
> Now, when  ghc-6.4  does such a repeated `make', it re-compiles
> all the `previous' modules under the above options:

I'm afraid I don't know what the problem might be.  Probably GHC is
looking in the wrong place for .hi files or .o files, or both.

> ---------
> Chasing modules from: DExport
>     Source file changed or recompilation check turned off
> Compiling Prelude0     ( ./Prelude0.hs, /.../source/export/Prelude0.o
                                         ^^^^^^^
in particul, that looks very strange!  Did you edit that by hand, or is
that the verbatim GHC output?  (copying the verbatim output is usually
better, to avoid confusion).

Cheers,
	Simon


More information about the Glasgow-haskell-users mailing list