[GHC] #14739: Cannot compile ghc 8.2.1 or 8.2.2 on armv7l architectures

GHC ghc-devs at haskell.org
Tue Jan 30 14:44:31 UTC 2018


#14739: Cannot compile ghc 8.2.1 or 8.2.2 on armv7l architectures
-------------------------------------+-------------------------------------
           Reporter:  mitchty        |             Owner:  (none)
               Type:  bug            |            Status:  new
           Priority:  normal         |         Milestone:
          Component:  Compiler       |           Version:  8.2.2
           Keywords:                 |  Operating System:  Unknown/Multiple
       Architecture:                 |   Type of failure:  Building GHC
  Unknown/Multiple                   |  failed
          Test Case:                 |        Blocked By:
           Blocking:                 |   Related Tickets:
Differential Rev(s):                 |         Wiki Page:
-------------------------------------+-------------------------------------
 Noticed while trying to build ghc 8.2.1, and ghc 8.2.2 on alpine linux
 armhf as well as nixos. Opening this ticket as I previously thought this
 was just some quirk of the alpine linux port but managed to find out from
 dhess on irc that nixos hits the same issue for both as well on armv7l
 arches.

 What happens. 8.2.1 logs, 8.2.2 has similar or the same issues, I was just
 double checking that 8.2.1 has the same problems.

 {{{
 "inplace/bin/ghc-stage2" -hisuf dyn_hi -osuf  dyn_o -hcsuf dyn_hc -fPIC
 -dynamic  -H32m -O -Wall      -hide-all-packag
 es -i -iutils/haddock/driver -iutils/haddock/haddock-api/src
 -iutils/haddock/haddock-library/vendor/attoparsec-0.13.1.
 0 -iutils/haddock/haddock-library/src -iutils/haddock/dist/build
 -Iutils/haddock/dist/build -iutils/haddock/dist/build
 /haddock/autogen -Iutils/haddock/dist/build/haddock/autogen    -optP-
 DIN_GHC_TREE -optP-include -optPutils/haddock/dis
 t/build/haddock/autogen/cabal_macros.h -package-id base-4.10.0.0 -package-
 id filepath-1.4.1.2 -package-id directory-1.
 3.0.2 -package-id containers-0.5.10.2 -package-id deepseq-1.4.3.0
 -package-id array-0.5.2.0 -package-id xhtml-3000.2.2
  -package-id Cabal-2.0.0.2 -package-id ghc-boot-8.2.1 -package-id
 ghc-8.2.1 -package-id bytestring-0.10.8.2 -package-i
 d transformers-0.5.2.0 -funbox-strict-fields -Wall -fwarn-tabs -O2
 -threaded -XHaskell2010  -no-user-package-db -rtsop
 ts -Wno-unused-imports -Wno-deprecations     -Wnoncanonical-monad-
 instances  -odir utils/haddock/dist/build -hidir uti
 ls/haddock/dist/build -stubdir utils/haddock/dist/build    -c
 utils/haddock/haddock-api/src/Haddock/Backends/Hyperlink
 er/Types.hs -o
 utils/haddock/dist/build/Haddock/Backends/Hyperlinker/Types.dyn_o
 "inplace/bin/ghc-stage2" -hisuf dyn_hi -osuf  dyn_o -hcsuf dyn_hc -fPIC
 -dynamic  -H32m -O -Wall      -hide-all-packag
 es -i -iutils/haddock/driver -iutils/haddock/haddock-api/src
 -iutils/haddock/haddock-library/vendor/attoparsec-0.13.1.
 0 -iutils/haddock/haddock-library/src -iutils/haddock/dist/build
 -Iutils/haddock/dist/build -iutils/haddock/dist/build
 /haddock/autogen -Iutils/haddock/dist/build/haddock/autogen    -optP-
 DIN_GHC_TREE -optP-include -optPutils/haddock/dis
 t/build/haddock/autogen/cabal_macros.h -package-id base-4.10.0.0 -package-
 id filepath-1.4.1.2 -package-id directory-1.
 3.0.2 -package-id containers-0.5.10.2 -package-id deepseq-1.4.3.0
 -package-id array-0.5.2.0 -package-id xhtml-3000.2.2
  -package-id Cabal-2.0.0.2 -package-id ghc-boot-8.2.1 -package-id
 ghc-8.2.1 -package-id bytestring-0.10.8.2 -package-i
 d transformers-0.5.2.0 -funbox-strict-fields -Wall -fwarn-tabs -O2
 -threaded -XHaskell2010  -no-user-package-db -rtsop
 ts -Wno-unused-imports -Wno-deprecations     -Wnoncanonical-monad-
 instances  -odir utils/haddock/dist/build -hidir uti
 ls/haddock/dist/build -stubdir utils/haddock/dist/build    -c
 utils/haddock/haddock-library/src/Documentation/Haddock/
 Types.hs -o utils/haddock/dist/build/Documentation/Haddock/Types.dyn_o
 make[1]: *** [utils/haddock/ghc.mk:21:
 utils/haddock/dist/build/Documentation/Haddock/Types.dyn_o] Segmentation
 fault
 (core dumped)
 make[1]: *** Waiting for unfinished jobs....
 make[1]: *** [utils/haddock/ghc.mk:21:
 utils/haddock/dist/build/ResponseFile.dyn_o] Segmentation fault (core
 dumped)
 make[1]: *** [utils/haddock/ghc.mk:21:
 utils/haddock/dist/build/Haddock/GhcUtils.dyn_o] Segmentation fault (core
 dumpe
 d)
 make[1]: *** [utils/haddock/ghc.mk:21:
 utils/haddock/dist/build/Haddock/Backends/Hyperlinker/Types.dyn_o]
 Segmentation
  fault (core dumped)

  $ gdb /home/build/aports/community/ghc/src/ghc-8.2.1/inplace/lib/bin/ghc-
 stage2 src/ghc-8.2.1/core
 GNU gdb (GDB) 7.12.1
 Copyright (C) 2017 Free Software Foundation, Inc.
 License GPLv3+: GNU GPL version 3 or later
 <http://gnu.org/licenses/gpl.html>
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
 and "show warranty" for details.
 This GDB was configured as "armv6-alpine-linux-musleabihf".
 Type "show configuration" for configuration details.
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>.
 Find the GDB manual and other documentation resources online at:
 <http://www.gnu.org/software/gdb/documentation/>.
 For help, type "help".
 Type "apropos word" to search for commands related to "word"...
 Reading symbols from
 /home/build/aports/community/ghc/src/ghc-8.2.1/inplace/lib/bin/ghc-
 stage2...done.
 [New LWP 24905]
 [New LWP 24908]
 bt
 Core was generated by
 `/home/build/aports/community/ghc/src/ghc-8.2.1/inplace/lib/bin/ghc-stage2
 -B/ho'.
 Program terminated with signal SIGSEGV, Segmentation fault.
 #0  0x0019d628 in stg_IND_STATIC_info ()
 [Current thread is 1 (LWP 24905)]
 (gdb) bt
 #0  0x0019d628 in stg_IND_STATIC_info ()
 #1  0xaffcfe1c in stg_newAlignedPinnedByteArrayzh$def ()
    from /home/build/aports/community/ghc/src/ghc-8.2.1/rts/dist/build
 /libHSrts_thr-ghc8.2.1.so
 Backtrace stopped: previous frame identical to this frame (corrupt stack?)
 (gdb)
 }}}

 I've been poking around but i'm a bit out of my depth here in
 understanding the ghc rts here and debugging it as well. But its curious
 that only the stage2 compiler is having issues being built and not stage0
 or stage1.

 If needed/desired I can provide access/login to this box for debugging but
 its sloooow, ~29 hours to do a build to this point.

 But I'm willing to help move things along, ghc on arm is one of the main
 reaons for the port to alpine linux and 8.0.2 works fine.

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


More information about the ghc-tickets mailing list