[GHC] #16151: GHC 8.6 build failure on ARM

#16151: GHC 8.6 build failure on ARM --------------------------------+---------------------------------------- Reporter: dustin | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.6.3 Keywords: | Operating System: Linux Architecture: arm | Type of failure: Building GHC failed Test Case: | Blocked By: Blocking: | Related Tickets: Differential Rev(s): | Wiki Page: --------------------------------+---------------------------------------- I'm attempting to build the ghc-8.6 branch on ARM linux. I have GHC 8.2.2 and LLVM 6.0.1 installed. My only build.mk change is to set BuildFlavour=quick I've made it as far as "final phase" where I get the following failure: {{{ ===--- building final phase /usr/bin/make --no-print-directory -f ghc.mk phase=final all "inplace/bin/ghc-stage1" -static -O0 -H64m -Wall -Iincludes -Iincludes/dist -Iincludes/dist-derivedconstants/header -Iincludes/dist- ghcconstants/header -Irts -Irts/dist/build -DCOMPILING_RTS -DFS_NAMESPACE=rts -this-unit-id rts -optc-D NOSMP -dcmm-lint -i -irts -irts/dist/build -Irts/dist/build -irts/dist/build/./autogen -Irts/dist/build/./autogen -O2 -Wcpp-undef -Wnoncanonical-monad-instances -c rts/StgStartup.cmm -o rts/dist/build/StgStartup.o /tmp/ghc154171_0/ghc_8.s: Assembler messages: /tmp/ghc154171_0/ghc_8.s:32:0: error: Error: selected processor does not support `movw r7,:lower16:stg_enter_info' in ARM mode | 32 | movw r7, :lower16:stg_enter_info | ^ /tmp/ghc154171_0/ghc_8.s:33:0: error: Error: selected processor does not support `movt r7,:upper16:stg_enter_info' in ARM mode | 33 | movt r7, :upper16:stg_enter_info | ^ /tmp/ghc154171_0/ghc_8.s:231:0: error: Error: selected processor does not support `movw r2,#32512' in ARM mode | 231 | movw r2, #32512 | ^ /tmp/ghc154171_0/ghc_8.s:233:0: error: Error: selected processor does not support `movt r2,#640' in ARM mode | 233 | movt r2, #640 | ^ `gcc' failed in phase `Assembler'. (Exit code: 1) }}} -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/16151 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#16151: GHC 8.6 build failure on ARM ----------------------------------------+------------------------------ Reporter: dustin | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.6.3 Resolution: | Keywords: Operating System: Linux | Architecture: arm Type of failure: Building GHC failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | ----------------------------------------+------------------------------ Comment (by bgamari): What does `inplace/bin/ghc-stage1 --info` say? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/16151#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#16151: GHC 8.6 build failure on ARM ----------------------------------------+------------------------------ Reporter: dustin | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.6.3 Resolution: | Keywords: Operating System: Linux | Architecture: arm Type of failure: Building GHC failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | ----------------------------------------+------------------------------ Changes (by dustin): * Attachment "Dockerfile" added. Dockerfile for building an ARM build environment. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/16151 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#16151: GHC 8.6 build failure on ARM ----------------------------------------+------------------------------ Reporter: dustin | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.6.3 Resolution: | Keywords: Operating System: Linux | Architecture: arm Type of failure: Building GHC failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | ----------------------------------------+------------------------------ Comment (by dustin): I've attached the Docker file I used to successfully build the 8.6 branch on ARM. {{{ ghc@76bbfcc338d8:~/ghc$ /usr/local/bin/ghc --version The Glorious Glasgow Haskell Compilation System, version 8.6.3 }}} It's based on one of the CI dockerfiles, with no material changes. Note that it doesn't include teTeX -- I did build a docker image with that successfully (and it's massive) so it's possible, but I didn't have that enabled when I did my final build. One thing in particular that is important for my environment, but perhaps not in general is that I'm using my own clang binary distribution. I'm running on PC Linux and have some userid mapping stuff and there's a mess of UID mapping with the clang distribution having a strange user ID that I don't want to configure my system around. I just changed the user ID in my tar file and renamed the files while I was at it so it would install into the correct place (also saving a bit of time). Is there a path to official binary distributions from this? I don't expect to be trusted (at least, not at this point), but it would be nice if ghc were available to everyone. :) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/16151#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#16151: GHC 8.6 build failure on ARM ----------------------------------------+------------------------------ Reporter: dustin | Owner: (none) Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.6.3 Resolution: | Keywords: Operating System: Linux | Architecture: arm Type of failure: Building GHC failed | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | ----------------------------------------+------------------------------ Comment (by dustin): An artifact I built using this process is available via stack 13.x now. It seems to be working fine for me (with clang+llvm 6 installed) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/16151#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC