Skip to content

failed to build cross-compiler

I'm trying to build cross-compiler(ghc-8.4.1) but got an error.

Target platform is 32-bit windows.

Here is what I do:

  1. pull docker image[1]: docker pull gregweber/ghc-haskell-dev
  2. install gcc-mingw-w64-i686: apt-get install gcc-mingw-w64-i686
  3. download ghc source and switch to tag ghc-8.4.1-release
  4. run ./boot
  5. CC=/usr/bin/i686-w64-mingw32-gcc ./configure --target=i686-w64-mingw32 --enable-unregisterised
  6. cp mk/build.mk.sample mk/build.mk
  7. uncomment the line: BuildFlavour = quick-cross-ncg
  8. run make

Error message:

Configuring ghc-pkg-6.9...
"inplace/bin/mkdirhier" utils/ghc-pkg/dist/build/tmp//.
"/opt/ghc/8.2.1/bin/ghc" -o utils/ghc-pkg/dist/build/tmp/ghc-pkg -hisuf hi -osuf  o -hcsuf hc -static  -O0 -H64m -Wall   -package-db libraries/bootstrapping.conf  -hide-all-packages -i -iutils/ghc-pkg/. -iutils/ghc-pkg/dist/build -Iutils/ghc-pkg/dist/build -iutils/ghc-pkg/dist/build/ghc-pkg/autogen -Iutils/ghc-pkg/dist/build/ghc-pkg/autogen     -optP-include -optPutils/ghc-pkg/dist/build/ghc-pkg/autogen/cabal_macros.h    -no-user-package-db -rtsopts        -odir utils/ghc-pkg/dist/build -hidir utils/ghc-pkg/dist/build -stubdir utils/ghc-pkg/dist/build     -static  -O0 -H64m -Wall   -package-db libraries/bootstrapping.conf  -hide-all-packages -i -iutils/ghc-pkg/. -iutils/ghc-pkg/dist/build -Iutils/ghc-pkg/dist/build -iutils/ghc-pkg/dist/build/ghc-pkg/autogen -Iutils/ghc-pkg/dist/build/ghc-pkg/autogen     -optP-include -optPutils/ghc-pkg/dist/build/ghc-pkg/autogen/cabal_macros.h    -no-user-package-db -rtsopts        -no-auto-link-packages -no-hs-main
ghc: no input files
Usage: For basic information, try the `--help' option.
utils/ghc-pkg/ghc.mk:70: recipe for target 'utils/ghc-pkg/dist/build/tmp/ghc-pkg' failed
make[1]: *** [utils/ghc-pkg/dist/build/tmp/ghc-pkg] Error 1
Makefile:122: recipe for target 'all' failed
make: *** [all] Error 2

If using BuildFlavour = quick, it works well.

[1]https://ghc.haskell.org/trac/ghc/wiki/Building/Preparation/Linux#Docker

Trac metadata
Trac field Value
Version 8.4.1
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component Compiler
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information