Subject: bug#50858: Installing git-annex for aarch64 fails on ghc build

From: Efraim Flashner <[email-masked]>
Date: Sun, 3 Oct 2021 15:32:05 +0300

On Fri, Oct 01, 2021 at 10:16:59PM +0200, Maxime Devos wrote:
> Zacchaeus Scheffer schreef op ma 27-09-2021 om 18:28 [-0400]:
> > Hi Guix!
> > 
> > I'm trying to install git-annex for aarch64,
> 
> Are you doing --target=aarch64-linux-gnu or --system=aarch64-linux?
> The current package definition needs bootstrap binaries, which currently
> are only defined for x86_64-linux and i686-linux, so --system=aarch64-linux
> cannot work.
> 
> Doing --target=aarch64-linux-gnu should work though (untested).

(ins)efraim@3900XT ~/workspace/guix$ time torsocks ./pre-inst-env guix build --no-grafts git-annex --target=aarch64-linux-gnu
guix build: error: gnu/packages/haskell-apps.scm:345:2: [email-masked]: build system `haskell' does not support cross builds

Interestingly it might be easier to get the haskell-build-system to
support cross compiling than to find the upstream blessed binary for one
of the GHC releases and use that as a bootstrap for later GHC releases
on aarch64.

> 
> >  but it fails on the following line:
> > 
> > \ 'configure-bin' phasebuilder for `/gnu/store/b6j0zdnbpdhx81npbk25m4nls5y1h3f5-ghc-7.10.2.drv' failed with exit code 1
> > 
> > I have attached the log for the failed ghc build.  The first error there seems to be:
> > 
> > /tmp/guix-build-ghc-7.10.2.drv-0/ghc-7.10.2/ghc-bin/ghc-7.8.4/utils/ghc-pwd/dist-install/build/tmp/ghc-pwd: cannot execute binary file: Exec format error
> > 
> > Seeing as this works fine for x86, I'm guessing that a ghc-pwd is being used that was compiled for x86, maybe an error in setting up cross compiling?
> > 
> > Thanks,
> > Zacchae

-- 
Efraim Flashner   <[email-masked]>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted