Building ghc on Windows with msys2

Gintautas Miliauskas gintautas.miliauskas at gmail.com
Wed Oct 8 00:03:29 UTC 2014


By the way, I've noticed that ghc occasionally segfaults during Windows
builds, like this:

"inplace/bin/ghc-stage1.exe" -hisuf hi -osuf  o -hcsuf hc -static  -H64m
-O0 -fasm    -hide-all-packages -i -iutils/hsc2hs/.
-iutils/hsc2hs/dist-install/build -iutils/hsc2hs/dist-install/build/autogen
-Iutils/hsc2hs/dist-install/build -Iutils/hsc2hs/dist-install/build/autogen
    -optP-include
-optPutils/hsc2hs/dist-install/build/autogen/cabal_macros.h -package-key
base_ESD4aQEEWwsHtYJVc1BwtJ -package-key conta_ChF4XLXB9JmByIycPzerow
-package-key direc_HU5aFxMIQNwGQFzisjuinu -package-key
filep_34DFDFT9FVD9pRLLgh8IdQ -package-key proce_7ZlAbRkwiRO8qgXx3NNP0G
-XHaskell98 -XCPP -XForeignFunctionInterface  -no-user-package-db -rtsopts
     -odir utils/hsc2hs/dist-install/build -hidir
utils/hsc2hs/dist-install/build -stubdir utils/hsc2hs/dist-install/build
-c utils/hsc2hs/./HSCParser.hs -o
utils/hsc2hs/dist-install/build/HSCParser.o
utils/hsc2hs/ghc.mk:16: recipe for target
'utils/hsc2hs/dist-install/build/HSCParser.o' failed
make[1]: *** [utils/hsc2hs/dist-install/build/HSCParser.o] Segmentation
fault
make[1]: *** Deleting file 'utils/hsc2hs/dist-install/build/HSCParser.o'

The errors are not deterministic at all. Any idea what's happening? Any
suggestions for debugging this?


On Wed, Oct 8, 2014 at 1:21 AM, Gintautas Miliauskas <
gintautas.miliauskas at gmail.com> wrote:

> I've cleaned up the main Windows build
> <https://ghc.haskell.org/trac/ghc/wiki/Building/Preparation/Windows>
> page, moved MSYS2 instructions there, moved out legacy instructions and
> added backlinks / warnings / redirects. It would be great if someone could
> go through, verify the instructions and make sure there are no loose ends
> or misleading wikipages.
>
> On Wed, Oct 1, 2014 at 12:25 AM, Simon Peyton Jones <simonpj at microsoft.com
> > wrote:
>
>>  Gintautas, and other folk building GHC on Windows,
>>
>>
>>
>> There has been some activity on the “GHC on Windows” front, which is
>> great.
>>
>>
>>
>> Some time ago I wrote:
>>
>> I would love it if you guys formed a GHC-on-Windows Task Force, who tried
>> to make sure that the Windows experience was always good.  At the moment we
>> have lots of Windows users but very few who are willing to help make it
>> work, the recipients of this email being honourable exceptions.
>>
>>
>>
>> but nothing really happened.  Maybe this time it can!  Possible member of
>> such a task force are:
>>
>> ·        Gintautas Miliauskas gintautas.miliauskas at gmail.com
>>
>> ·        kyra kyrab at mail.ru
>>
>> ·        Marek Wawrzos marek.28.93 at gmail.com
>>
>> ·        Tamar Christina <lonetiger at gmail.com>
>>
>> ·        Roman Kuznetsov <kuznero at hotmail.com>
>>
>> ·        Randy Polen <randyhaskell at outlook.com>
>>
>>
>>
>> All we need is someone to act as convenor/coordinator and we are good to
>> go.  Would any of you be willing to play that role?
>>
>>
>>
>> An advantage of having a working group is that you can *decide* things.
>> At the moment people often wait for GHC HQ to make a decision, and end up
>> waiting a long time.  It would be better if a working group was responsible
>> for the GHC-on-Windows build and then if (say) you want to mandate msys2,
>> you can go ahead and mandate it.  Well, obviously consult ghc-devs for
>> advice, but you are in the lead.  Does that make sense?
>>
>>
>>
>>
>>
>> I think an early task is to replace what Neil Mitchell encountered: FIVE
>> different wiki pages describing how to build GHC on Windows.  We want just
>> one!  (Others can perhaps be marked “out of date/archive” rather than
>> deleted, but it should be clear which is the main choice.)
>>
>>
>>
>> I agree with using msys2 as the main choice.  (I’m using it myself.)  It
>> may be that Gintautas’s page
>> https://ghc.haskell.org/trac/ghc/wiki/Building/Preparation/Windows/MSYS2
>> is already sufficient.  Although I’d like to see it tested by others.  For
>> example, I found that it was CRUCIAL to set MSYSYSTEM=MINGW whereas
>> Gintautas’s page says nothing about that.
>>
>>
>>
>> Other small thoughts:
>>
>> ·        We started including the ghc-tarball stuff because when we
>> relied directly on the gcc that came with msys, we kept getting build
>> failures because the gcc that some random person happened to be using did
>> not work (e..g. they had a too-old or too-new version of msys).  By using a
>> single, fixed gcc, we avoided all this pain.
>>
>>
>>
>> ·        I don’t know what a “rubenvb” build is, but I think you can go
>> ahead and say “use X and Y in this way”.  The important thing is that it
>> should be reproducible, and not dependent on the particular Cygwin or gcc
>> or whatever the that user happens to have installed.
>>
>>
>>
>> Simon
>>
>>
>>
>> *From:* ghc-devs [mailto:ghc-devs-bounces at haskell.org] *On Behalf Of *Gintautas
>> Miliauskas
>> *Sent:* 15 September 2014 21:58
>> *To:* ghc-devs at haskell.org
>> *Subject:* Building ghc on Windows with msys2
>>
>>
>>
>> Hello,
>>
>>
>>
>> I have been messing around a little bit with building GHC from source on
>> Windows, and found the msys2 wikipage
>> <https://ghc.haskell.org/trac/ghc/wiki/Building/Preparation/Windows/MSYS2> quite
>> useful, but somewhat outdated. Quite a few steps in those instructions are
>> no longer necessary and can be omitted. I am working on cleaning up that
>> wikipage right now and should be done in a day or two.
>>
>>
>>
>> I've found a recent email
>> <http://www.haskell.org/pipermail/ghc-devs/2014-September/006251.html> in
>> the middle of updating the wikipage about other people planning to do the
>> same, so I thought I'd shoot an email to make sure that work is not being
>> duplicated.
>>
>>
>>
>> msys2 seems to be in good shape and should probably be promoted to the
>> primary suggested method to build ghc on Windows. Let's look into that once
>> the new build instructions have been proofread and verified.
>>
>>
>>
>> Best regards,
>>
>> --
>> Gintautas Miliauskas
>>
>
>
>
> --
> Gintautas Miliauskas
>



-- 
Gintautas Miliauskas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20141008/c9da0d83/attachment.html>


More information about the ghc-devs mailing list