Two issues bulding ghc 6.4.1

Dimitry Golubovsky dimitry at golubovsky.org
Sun Dec 25 10:20:02 EST 2005


I have encountered two issues trying to build ghc-6.4.1 from the source 
tarball.

1. (fixed) GNU make v 3.79 does not work (was discussed on irc 
yesterday: at least two people including myself got this issue), v 3.80 
works. If not already in FAQ/wiki perhaps worth including.

2. Error while assembling (or mangling?) ForeignObj.lhs; fragments of 
make output below (long lines wrapped/truncated, the whole file is too 
long to post it here but I'll provide it if needed):

=======================================================================

------------------------------------------------------------------------
../../ghc/compiler/ghc-inplace -M -optdep-f -optdep.depend -optdep-s 
-optdepp -osuf o    -H16m -O -ign
<<ghc: 13519236 bytes, 3 GCs, 92336/92336 avg/max bytes residency (1 
samples), 16M in use, 0.02 INIT (
------------------------------------------------------------------------
==fptools== make boot -wr;
  in /home/dima_ext/ghc-6.4.1/hslibs/doc
------------------------------------------------------------------------
------------------------------------------------------------------------
===fptools== Finished making `boot' in lang concurrent posix util data 
text net hssource  doc ...
PWD = /home/dima_ext/ghc-6.4.1/hslibs
------------------------------------------------------------------------
make[1]: Leaving directory `/home/dima_ext/ghc-6.4.1/hslibs'
make[1]: Entering directory `/home/dima_ext/ghc-6.4.1/hslibs'
------------------------------------------------------------------------
===fptools== Recursively making `all' in lang concurrent posix util data 
text net hssource  doc ...
PWD = /home/dima_ext/ghc-6.4.1/hslibs
------------------------------------------------------------------------
------------------------------------------------------------------------
==fptools== make all -wr;
  in /home/dima_ext/ghc-6.4.1/hslibs/lang
------------------------------------------------------------------------
------------------------------------------------------------------------
===fptools== Recursively making `all' for ways: p ...
PWD = /home/dima_ext/ghc-6.4.1/hslibs/lang
------------------------------------------------------------------------
------------------------------------------------------------------------
==fptools== make way=p all;
PWD = /home/dima_ext/ghc-6.4.1/hslibs/lang
------------------------------------------------------------------------
rm -f ForeignObj.p_o; if [ ! -d ForeignObj_split ]; then mkdir 
ForeignObj_split; else /usr/bin/find Fo
../../ghc/compiler/ghc-inplace -H16m -O -cpp -fglasgow-exts -Icbits 
-imonads -ignore-package lang -O -

ForeignObj.lhs:98:0:
     Warning: Module `Addr' is deprecated:
                  This library will go away soon; use Foreign.Ptr instead

ForeignObj.lhs:98:0:
     Warning: Deprecated use of data constructor `A#'
              (imported from Addr):
              This library will go away soon; use Foreign.Ptr instead

ForeignObj.lhs:98:0:
     Warning: Deprecated use of `addrToPtr'
              (imported from Addr):
              This library will go away soon; use Foreign.Ptr instead

[more deprecated API warnings follow]

ForeignObj.lhs:98:0:
     Warning: Deprecated use of type constructor or class `Addr'
              (imported from Addr):
              This library will go away soon; use Foreign.Ptr instead

ForeignObj.lhs:136:0:
     Warning: foreign declaration uses deprecated non-standard syntax
ghc-asm: (mangler) still have jump involving %edi!
         pushl 4(%esi)
         call EnterFunCCS
         addl $4,%esp
         cmpl $0,era
         je .L580
         movl 8(%esi),%eax
         andl $1073709056,%eax
         orl $1073741824,%eax

[more assembly language follows]

         movl %eax,CCCS
         jmp *(%ebp)
         .align 4
.L582:
         jmp *-4(%ebx)
.Lfe5:
<<ghc: 92002572 bytes, 15 GCs, 2799244/5043524 avg/max bytes residency 
(3 samples), 17M in use, 0.01 I
make[3]: *** [ForeignObj.p_o] Error 255
make[2]: *** [all] Error 1
make[1]: *** [all] Error 1
make[1]: Leaving directory `/home/dima_ext/ghc-6.4.1/hslibs'
make: *** [build] Error 1

=======================================================================================================

What was used:

GHC to bootstrap:

bash$ ghc --version 

The Glorious Glasgow Haskell Compilation System, version 6.2.2

bash$ gcc --version 

egcs-2.91.66

bash$ as --version 

GNU assembler 2.9.1
Copyright 1997 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License.  This program has absolutely no warranty.
This assembler was configured for a target of `i386-slackware-linux'.

Has anyone else had this?

Earlier, GHC 6.2.2 built with these tools OK.

Thanks for any ideas.

Dimitry



More information about the Glasgow-haskell-users mailing list