Skip to content

Hadrian fails with missing hi file

Summary

I get some weird error:

Error, &%> rule failed to produce 1 file (out of 2)
  _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.dyn_o
  _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.dyn_hi - MISSING

Steps to reproduce

git checkout origin/ghc-8.10 # this is commit e512d310e668b77a9d1e022dbff45050f69032f5

./hadrian/build.stack.sh -j --flavour=quickest --configure 'stage1.*.ghc.hs.opts += -g3' 'stage1.*.cabal.configure.opts += --disable-library-stripping --disable-executable-stripping'

# builds

git cherry-pick 0effc57d48ace6b719a9f4cbeac67c95ad55010b

./hadrian/build.stack.sh -j --configure 'stage1.*.ghc.hs.opts += -g3' 'stage1.*.cabal.configure.opts += --disable-library-stripping --disable-executable-stripping'

# note I removed 'quickest'

Fails with:

    |          ^
/---------------------------------------------------------\
| Successfully built program 'hp2ps' (Stage1).            |
| Executable: _build/stage1/bin/hp2ps                     |
| Program synopsis: Heap Profile to PostScript converter. |
\---------------------------------------------------------/
| Run Cc FindCDependencies Stage1: libraries/ghc-prim/cbits/popcnt.c => _build/stage1/libraries/ghc-prim/build/c/cbits/popcnt.o.d
| Run Ghc CompileCWithGhc Stage1: libraries/ghc-prim/cbits/popcnt.c => _build/stage1/libraries/ghc-prim/build/c/cbits/popcnt.o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/CString.hs => _build/stage1/libraries/ghc-prim/build/GHC/CString.o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/Magic.hs => _build/stage1/libraries/ghc-prim/build/GHC/Magic.o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/Prim/Ext.hs => _build/stage1/libraries/ghc-prim/build/GHC/Prim/Ext.o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/CString.hs => _build/stage1/libraries/ghc-prim/build/GHC/CString.p_o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/Prim/Ext.hs => _build/stage1/libraries/ghc-prim/build/GHC/Prim/Ext.p_o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/Tuple.hs => _build/stage1/libraries/ghc-prim/build/GHC/Tuple.o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/Magic.hs => _build/stage1/libraries/ghc-prim/build/GHC/Magic.p_o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/IntWord64.hs => _build/stage1/libraries/ghc-prim/build/GHC/IntWord64.p_o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/Tuple.hs => _build/stage1/libraries/ghc-prim/build/GHC/Tuple.p_o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/IntWord64.hs => _build/stage1/libraries/ghc-prim/build/GHC/IntWord64.o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/Debug.hs => _build/stage1/libraries/ghc-prim/build/GHC/Debug.p_o
| Run Ghc CompileHs Stage1: _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.hs => _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.p_o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/Classes.hs => _build/stage1/libraries/ghc-prim/build/GHC/Classes.p_o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/Debug.hs => _build/stage1/libraries/ghc-prim/build/GHC/Debug.o
| Run Ghc CompileHs Stage1: _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.hs => _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.o
| Run Ghc CompileHs Stage1: libraries/ghc-prim/GHC/Classes.hs => _build/stage1/libraries/ghc-prim/build/GHC/Classes.o
| Configure package 'deepseq'
ghc: interrupted
Error when running Shake build system:
  at action, called at src/Rules.hs:71:19 in main:Rules
  at need, called at src/Rules.hs:93:5 in main:Rules
* Depends on: _build/stage1/lib/package.conf.d/unix-2.7.2.2.conf
* Depends on: OracleQ (ContextDataKey (Context {stage = Stage1, package = Package {pkgType = Library, pkgName = "unix", pkgPath = "libraries/unix"}, way = v}))
* Depends on: _build/stage1/libraries/unix/setup-config
* Depends on: _build/stage1/lib/package.conf.d/time-1.9.3.conf
* Depends on: OracleQ (ContextDataKey (Context {stage = Stage1, package = Package {pkgType = Library, pkgName = "time", pkgPath = "libraries/time"}, way = v}))
* Depends on: _build/stage1/libraries/time/setup-config
* Depends on: _build/stage1/lib/package.conf.d/deepseq-1.4.4.0.conf
* Depends on: OracleQ (ContextDataKey (Context {stage = Stage1, package = Package {pkgType = Library, pkgName = "deepseq", pkgPath = "libraries/deepseq"}, way = v}))
* Depends on: _build/stage1/libraries/deepseq/setup-config
* Depends on: _build/stage1/lib/package.conf.d/ghc-prim-0.6.1.conf
  at need, called at src/Rules/Register.hs:113:5 in main:Rules.Register
* Depends on: _build/stage1/libraries/ghc-prim/build/libHSghc-prim-0.6.1-ghc8.10.2.20200829.so
  at need, called at src/Rules/Library.hs:147:5 in main:Rules.Library
* Depends on: _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.dyn_o
  at &%>, called at src/Rules/Compile.hs:54:7 in main:Rules.Compile
* Depends on: _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.dyn_o _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.dyn_hi
  at error, called at src/Development/Shake/Internal/Rules/Files.hs:245:13 in shake-0.18.3-K6N2eLzVtai6jtZeWAmEIo:Development.Shake.Internal.Rules.Files
* Raised the exception:
Error, &%> rule failed to produce 1 file (out of 2)
  _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.dyn_o
  _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.dyn_hi - MISSING

Running with --verbose:

./hadrian/build.stack.sh -j --configure 'stage1.*.ghc.hs.opts += -g3' 'stage1.*.cabal.configure.opts += --disable-library-stripping --disable-executable-stripping' --verbose
| Building Stage1 libraries: binary, Cabal, ghc, ghc-boot, ghc-boot-th, ghc-heap, ghci, hpc, mtl, parsec, template-haskell, text, transformers, terminfo, array, base, bytestring, containers, deepseq, directory, exceptions, filepath, ghc-compact, ghc-prim, haskeline, integer-gmp, pretty, process, rts, stm, time, xhtml, libiserv, unix
| Building Stage1 programs: ghc, ghc-pkg, hp2ps, hsc2hs, unlit, haddock, hpc, ghc-iserv, runghc

| Building Stage2 libraries: binary, Cabal, ghc, ghc-boot, ghc-boot-th, ghc-heap, ghci, hpc, mtl, parsec, template-haskell, text, transformers, terminfo, array, base, bytestring, containers, deepseq, directory, exceptions, filepath, ghc-compact, ghc-prim, haskeline, integer-gmp, pretty, process, rts, stm, time, xhtml, libiserv, unix
| Building Stage2 programs: ghc, ghc-pkg, hp2ps, hsc2hs, unlit, haddock, hpc, ghc-iserv, runghc

| Building Stage3 libraries: 
| Building Stage3 programs: 

Error when running Shake build system:
  at action, called at src/Rules.hs:71:19 in main:Rules
  at need, called at src/Rules.hs:93:5 in main:Rules
* Depends on: _build/stage1/lib/package.conf.d/unix-2.7.2.2.conf
* Depends on: OracleQ (ContextDataKey (Context {stage = Stage1, package = Package {pkgType = Library, pkgName = "unix", pkgPath = "libraries/unix"}, way = v}))
* Depends on: _build/stage1/libraries/unix/setup-config
* Depends on: _build/stage1/lib/package.conf.d/time-1.9.3.conf
* Depends on: OracleQ (ContextDataKey (Context {stage = Stage1, package = Package {pkgType = Library, pkgName = "time", pkgPath = "libraries/time"}, way = v}))
* Depends on: _build/stage1/libraries/time/setup-config
* Depends on: _build/stage1/lib/package.conf.d/deepseq-1.4.4.0.conf
* Depends on: OracleQ (ContextDataKey (Context {stage = Stage1, package = Package {pkgType = Library, pkgName = "deepseq", pkgPath = "libraries/deepseq"}, way = v}))
* Depends on: _build/stage1/libraries/deepseq/setup-config
* Depends on: _build/stage1/lib/package.conf.d/ghc-prim-0.6.1.conf
  at need, called at src/Rules/Register.hs:113:5 in main:Rules.Register
* Depends on: _build/stage1/libraries/ghc-prim/build/libHSghc-prim-0.6.1-ghc8.10.2.20200829.so
  at need, called at src/Rules/Library.hs:147:5 in main:Rules.Library
* Depends on: _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.dyn_o
  at &%>, called at src/Rules/Compile.hs:54:7 in main:Rules.Compile
* Depends on: _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.dyn_o _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.dyn_hi
  at error, called at src/Development/Shake/Internal/Rules/Files.hs:245:13 in shake-0.18.3-K6N2eLzVtai6jtZeWAmEIo:Development.Shake.Internal.Rules.Files
* Raised the exception:
Error, &%> rule failed to produce 1 file (out of 2)
  _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.dyn_o
  _build/stage1/libraries/ghc-prim/build/GHC/PrimopWrappers.dyn_hi - MISSING

Environment

  • GHC version used: Whatever build.stack.sh on this commit chooses

Optional:

  • Operating System: Ubuntu 18.04
  • System Architecture: x86_64
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information