[GHC] #15201: GHC 8.4 fails to build on Debian s390x

GHC ghc-devs at haskell.org
Thu Oct 18 15:31:24 UTC 2018


#15201: GHC 8.4 fails to build on Debian s390x
---------------------------------+----------------------------------------
        Reporter:  clint         |                Owner:  (none)
            Type:  bug           |               Status:  new
        Priority:  normal        |            Milestone:  8.8.1
       Component:  Compiler      |              Version:  8.4.3
      Resolution:                |             Keywords:
Operating System:  Linux         |         Architecture:  Unknown/Multiple
 Type of failure:  None/Unknown  |            Test Case:
      Blocked By:                |             Blocking:
 Related Tickets:                |  Differential Rev(s):
       Wiki Page:                |
---------------------------------+----------------------------------------

Comment (by juhpetersen):

 I think ghc-8.4 now builds on s390x, right?

 I have builds for both 8.4.3 and 8.4.4 on Fedora.
 And there is 8.4.3+dfsg1-2+b1 for Debian.
 (Though it requires Debian's fix-build-using-unregisterized-v8.2.patch.)

 However 8.6.1 fails to build on s390x for me with ghc-8.2.2 even with the
 patch:

 {{{
 :
 "/usr/bin/ghc" -hisuf hi -osuf  o -hcsuf hc -static  -H32m -O -Wall
 -Iincludes -Iincludes/dist -Iincludes/dist-derivedconstants/header
 -Iincludes/dist-ghcconstants/header -package-db
 libraries/bootstrapping.conf  -this-unit-id ghc-8.6.1 -hide-all-packages
 -i -icompiler/backpack -icompiler/basicTypes -icompiler/cmm
 -icompiler/codeGen -icompiler/coreSyn -icompiler/deSugar -icompiler/ghci
 -icompiler/hsSyn -icompiler/iface -icompiler/llvmGen -icompiler/main
 -icompiler/nativeGen -icompiler/parser -icompiler/prelude
 -icompiler/profiling -icompiler/rename -icompiler/simplCore
 -icompiler/simplStg -icompiler/specialise -icompiler/stgSyn
 -icompiler/stranal -icompiler/typecheck -icompiler/types -icompiler/utils
 -icompiler/stage1/build -Icompiler/stage1/build
 -icompiler/stage1/build/./autogen -Icompiler/stage1/build/./autogen
 -Icompiler/. -Icompiler/parser -Icompiler/utils -Icompiler/stage1
 -Icompiler/stage1/build/. -Icompiler/stage1/build/parser
 -Icompiler/stage1/build/utils -Icompiler/stage1/build/stage1    -optP-
 include -optPcompiler/stage1/build/./autogen/cabal_macros.h -package-id
 array-0.5.2.0 -package-id base-4.10.1.0 -package-id binary-0.8.6.0
 -package-id bytestring-0.10.8.2 -package-id containers-0.5.10.2 -package-
 id deepseq-1.4.3.0 -package-id directory-1.3.0.2 -package-id
 filepath-1.4.1.2 -package-id ghc-boot-8.6.1 -package-id ghc-boot-th-8.6.1
 -package-id ghc-heap-8.6.1 -package-id ghci-8.6.1 -package-id hpc-0.6.0.3
 -package-id process-1.6.1.0 -package-id template-haskell-2.14.0.0
 -package-id terminfo-0.4.1.2 -package-id time-1.8.0.2 -package-id
 transformers-0.5.5.0 -package-id unix-2.7.2.2 -Wall -Wno-name-shadowing
 -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances
 -Wnoncanonical-monoid-instances -this-unit-id ghc -XHaskell2010
 -XNoImplicitPrelude -DNO_REGS -DNOSMP -optc-DNOSMP -DSTAGE=1 -Rghc-timing
 -Wcpp-undef  -no-user-package-db -rtsopts        -odir
 compiler/stage1/build -hidir compiler/stage1/build -stubdir
 compiler/stage1/build    -c compiler/utils/Binary.hs -o
 compiler/stage1/build/Binary.o
 /tmp/ghc8bd3_0/ghc_3.hc: In function ‘cNqW_entry’:
 /tmp/ghc8bd3_0/ghc_3.hc:50988:61: error:
      error: ‘stg_MUT_ARR_PTRS_FROZEN0_info’ undeclared (first use in this
 function); did you mean ‘stg_MUT_ARR_PTRS_FROZEN_DIRTY_info’?
      ((struct {W_ x;} __attribute__((packed))*) _sHcZ)->x =
 (W_)&stg_MUT_ARR_PTRS_FROZEN0_info;
 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 stg_MUT_ARR_PTRS_FROZEN_DIRTY_info
       |
 50988 | ((struct {W_ x;} __attribute__((packed))*) _sHcZ)->x =
 (W_)&stg_MUT_ARR_PTRS_FROZEN0_info;
       |                                                             ^
 /tmp/ghc8bd3_0/ghc_3.hc:50988:61: error:
      note: each undeclared identifier is reported only once for each
 function it appears in
       |
 50988 | ((struct {W_ x;} __attribute__((packed))*) _sHcZ)->x =
 (W_)&stg_MUT_ARR_PTRS_FROZEN0_info;
       |                                                             ^
 /tmp/ghc8bd3_0/ghc_3.hc: In function ‘cNra_entry’:
 /tmp/ghc8bd3_0/ghc_3.hc:51045:61: error:
      error: ‘stg_MUT_ARR_PTRS_FROZEN0_info’ undeclared (first use in this
 function); did you mean ‘stg_MUT_ARR_PTRS_FROZEN_DIRTY_info’?
      ((struct {W_ x;} __attribute__((packed))*) _sHcZ)->x =
 (W_)&stg_MUT_ARR_PTRS_FROZEN0_info;
 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 stg_MUT_ARR_PTRS_FROZEN_DIRTY_info
       |
 51045 | ((struct {W_ x;} __attribute__((packed))*) _sHcZ)->x =
 (W_)&stg_MUT_ARR_PTRS_FROZEN0_info;
       |                                                             ^
 /tmp/ghc8bd3_0/ghc_3.hc: In function ‘sHDG_entry’:
 /tmp/ghc8bd3_0/ghc_3.hc:56499:61: error:
      error: ‘stg_MUT_ARR_PTRS_FROZEN0_info’ undeclared (first use in this
 function); did you mean ‘stg_MUT_ARR_PTRS_FROZEN_DIRTY_info’?
      ((struct {W_ x;} __attribute__((packed))*) _sHDE)->x =
 (W_)&stg_MUT_ARR_PTRS_FROZEN0_info;
 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 stg_MUT_ARR_PTRS_FROZEN_DIRTY_info
       |
 56499 | ((struct {W_ x;} __attribute__((packed))*) _sHDE)->x =
 (W_)&stg_MUT_ARR_PTRS_FROZEN0_info;
       |                                                             ^
 /tmp/ghc8bd3_0/ghc_3.hc: In function ‘cO9A_entry’:
 /tmp/ghc8bd3_0/ghc_3.hc:56819:61: error:
      error: ‘stg_MUT_ARR_PTRS_FROZEN0_info’ undeclared (first use in this
 function); did you mean ‘stg_MUT_ARR_PTRS_FROZEN_DIRTY_info’?
      ((struct {W_ x;} __attribute__((packed))*) _sHDE)->x =
 (W_)&stg_MUT_ARR_PTRS_FROZEN0_info;
 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 stg_MUT_ARR_PTRS_FROZEN_DIRTY_info
       |
 56819 | ((struct {W_ x;} __attribute__((packed))*) _sHDE)->x =
 (W_)&stg_MUT_ARR_PTRS_FROZEN0_info;
       |                                                             ^
 /tmp/ghc8bd3_0/ghc_3.hc: In function ‘cOa5_entry’:
 /tmp/ghc8bd3_0/ghc_3.hc:56907:61: error:
      error: ‘stg_MUT_ARR_PTRS_FROZEN0_info’ undeclared (first use in this
 function); did you mean ‘stg_MUT_ARR_PTRS_FROZEN_DIRTY_info’?
      ((struct {W_ x;} __attribute__((packed))*) _sHDE)->x =
 (W_)&stg_MUT_ARR_PTRS_FROZEN0_info;
 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 stg_MUT_ARR_PTRS_FROZEN_DIRTY_info
       |
 56907 | ((struct {W_ x;} __attribute__((packed))*) _sHDE)->x =
 (W_)&stg_MUT_ARR_PTRS_FROZEN0_info;
       |                                                             ^
 `gcc' failed in phase `C Compiler'. (Exit code: 1)
 <<ghc: 5594363976 bytes, 535 GCs, 37808155/68695472 avg/max bytes
 residency (14 samples), 179M in use, 0.001 INIT (0.001 elapsed), 6.458 MUT
 (7.118 elapsed), 2.739 GC (2.742 elapsed) :ghc>>
 make[1]: *** [compiler/ghc.mk:446: compiler/stage1/build/Binary.o] Error 1
 }}}

 I suppose I should try building 8.6.1 with ghc-8.4.x.

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/15201#comment:8>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list