Skip to content

Cross-compilation broken since 9.4.x

It's no longer possible to cross-compile GHC for a new platform.

Cross-compiling for 32-bit PowerPC fails with:

"inplace/bin/ghc-stage1" -static -optc-DTHREADED_RTS  -H32m -O -lffi -optl-pthread -O0 -H64m -Wall  -this-unit-id rts -optc-DNOSMP -dcmm-lint     -package-env - -i -irts -irts/dist-install/
build -Irts/dist-install/build -irts/dist-install/build/./autogen -Irts/dist-install/build/./autogen -Irts/include/../dist-install/build/include -Irts/include/. -Irts/. -optP-DCOMPILING_RTS
 -optP-DFS_NAMESPACE=rts        -O2 -Wcpp-undef   -Wnoncanonical-monad-instances  -c rts/dist-install/build/AutoApply.cmm -o rts/dist-install/build/AutoApply.thr_o
"inplace/bin/ghc-stage1" -static -optc-DTHREADED_RTS -optc-DDEBUG  -H32m -O -lffi -optl-pthread -O0 -H64m -Wall  -this-unit-id rts -optc-DNOSMP -dcmm-lint     -package-env - -i -irts -irts/
dist-install/build -Irts/dist-install/build -irts/dist-install/build/./autogen -Irts/dist-install/build/./autogen -Irts/include/../dist-install/build/include -Irts/include/. -Irts/. -optP-D
COMPILING_RTS -optP-DFS_NAMESPACE=rts        -O2 -Wcpp-undef -O0   -Wnoncanonical-monad-instances  -c rts/dist-install/build/AutoApply.cmm -o rts/dist-install/build/AutoApply.thr_debug_o
powerpc-linux-gnu-ld: skipping incompatible /tmp/ghc32924_0/ghc_10.o when searching for /tmp/ghc32924_0/ghc_10.o
powerpc-linux-gnu-ld: cannot find /tmp/ghc32924_0/ghc_10.o: file in wrong format
powerpc-linux-gnu-ld: skipping incompatible /tmp/ghc32924_0/ghc_10.o when searching for /tmp/ghc32924_0/ghc_10.o
powerpc-linux-gnu-ld: skipping incompatible /tmp/ghc32924_0/ghc_7.p_o when searching for /tmp/ghc32924_0/ghc_7.p_o
powerpc-linux-gnu-ld: cannot find /tmp/ghc32924_0/ghc_7.p_o: file in wrong format
powerpc-linux-gnu-ld: skipping incompatible /tmp/ghc32924_0/ghc_7.p_o when searching for /tmp/ghc32924_0/ghc_7.p_o
`powerpc-linux-gnu-ld' failed in phase `Merge objects'. (Exit code: 1)
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information