Skip to content

Cross compilation broken under Hadrian

Hadrian falls over essentially immediately when cross-compiling:

$ ./boot
$ ./configure --target=aarch64-linux-gnu
$ hadrian/build.cabal.sh -j32
Up to date
Up to date
| Copy file: settings => _build/stage1/lib/settings
| Copy file: settings => _build/stage0/lib/settings
| Copy file: utils/hsc2hs/template-hsc.h => _build/stage0/lib/template-hsc.h
| Copy file: llvm-targets => _build/stage0/lib/llvm-targets
| Copy file: driver/ghc-usage.txt => _build/stage0/lib/ghc-usage.txt
| Copy file: llvm-passes => _build/stage0/lib/llvm-passes
| Copy file: driver/ghci-usage.txt => _build/stage0/lib/ghci-usage.txt
shakeArgsWith   0.000s    0%                           
Function shake  0.084s   20%  ======                   
Database read   0.000s    0%                           
With database   0.000s    0%                           
Running rules   0.329s   79%  =========================
Total           0.415s  100%                           
Error when running Shake build system:
  at src/Rules.hs:(35,19)-(48,17):
  at src/Rules.hs:48:5-17:
* Depends on: _build/stage2/bin/aarch64-linux-gnu-ghctags
  at src/Hadrian/Utilities.hs:292:5-18:
* Depends on: _build/stage0/bin/aarch64-linux-gnu-ghctags
* Raised the exception:
Unknown program "_build/stage0/bin/aarch64-linux-gnu-ghctags"
CallStack (from HasCallStack):
  error, called at src/Rules/Program.hs:26:29 in main:Rules.Program
Edited by Ben Gamari
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information