
I’m afraid I am not familiar enough with ld to offer a proper fix, but to get you working again:
In rules/build-package-way.mkhttps://phabricator.haskell.org/D1242#790afd03 on line 154, remove the “$(if $(filter YES,$(LdIsGNULd)),-T $$($1_$2_LD_SCRIPT))” bit.
Yay. That worked! I can build again.
Could you possibly
· Push that change, so that Windows builds work again.
· Open a ticket for a full fix. Presumably that bit of code was there for a reason, so there’s still an action outstanding.
Thanks!!
Simon
From: lonetiger@gmail.com [mailto:lonetiger@gmail.com]
Sent: 18 November 2015 22:41
To: Simon Peyton Jones
Perhaps it is. Should I blow it away and re-install?
I’d hold on that this. I have just tried building myself and also hit it. Taking a closer look, it seems that the .o file being produces isn’t an object file but an image file. It contains the standard image headers and a PE signature. GHC is doing the right thing in error out here. I think this is coming from D1242, there’s a linker script in there driver/utils/merge_sections.ld that’s causing ld on windows to output an image file instead of an object file. I’m afraid I am not familiar enough with ld to offer a proper fix, but to get you working again: In rules/build-package-way.mkhttps://phabricator.haskell.org/D1242#790afd03 on line 154, remove the “$(if $(filter YES,$(LdIsGNULd)),-T $$($1_$2_LD_SCRIPT))” bit. That should get It working again. Regards, Tamar From: Simon Peyton Jones Sent: Wednesday, November 18, 2015 14:39 To: Tamar Christina;David Macek;ghc-devs@haskell.org Subject: RE: Window build broken | Presumably Simon didn't change this. Maybe the msys2 install is broken? Perhaps it is. Should I blow it away and re-install? One other difficulty is that (before my machine change) I tried to follow the instructions on https://ghc.haskell.org/trac/ghc/wiki/Building/Preparation/Windows to install 64-bit msys2; but I had a series of problems that Ben G was unable to get to the bottom of. Particularly I could not run bash from emacs; the emacs shell window never got as far as a prompt. So I backed off. As far as I know that is still broken. I think I have not tried the "32-bit msys2 installer" on that page. Maybe that should be my next step? Regardless, it's hard to see how any of this concerns the error message I was getting. As lonetiger said, it looks very similar to https://ghc.haskell.org/trac/ghc/ticket/10437 What next? Simon | -----Original Message----- | From: Tamar Christina [mailto:lonetiger@gmail.com] | Sent: 18 November 2015 09:14 | To: David Macek; Simon Peyton Jones; ghc-devs@haskell.orgmailto:ghc-devs@haskell.org | Subject: RE: Window build broken | | Hmm, | | Presumably Simon didn't change this. Maybe the msys2 install is broken? | | TamarFrom: David Macek | Sent: 18/11/2015 09:35 | To: Simon Peyton Jones; lonetiger@gmail.commailto:lonetiger@gmail.com; ghc-devs@haskell.orgmailto:ghc-devs@haskell.org | Subject: Re: Window build broken | On 18. 11. 2015 9:29, Simon Peyton Jones wrote: | > It’s msys2. I don’t have Cygwin on this machine. I have no idea where | that prompt comes from, but I agree it’s suspicious. | | Looks like your /etc/fstab is wrong. There should be a line like this one, | that removes the `cygdrive` prefix from Windows drive/letter | mounts: | | none / cygdrive binary,posix=0,noacl,user 0 0 | | -- | David Macek