[Mono-dev] Building Mono on Windows - And Having a Windows Installer again (Mono-devel-list Digest, Vol 115, Issue 58)

Jo Shields directhex at apebox.org
Sun Nov 30 18:32:37 UTC 2014

On 30/11/14 14:09, Alexander K?plinger wrote:
> Hey Alex,
> Jo Shields is currently working on revamping the Windows Installer in his repo: https://github.com/directhex/newbuilder
> I contributed the WiX setup files for creating an MSI installer. Jo sent me this link for a preview build (the usual caveats apply): https://drive.google.com/file/d/0Bz6-k9ELOQf3YTE1RHV3Y0dNaFU/view

IN THEORY, the current state of things is:

Check out newbuilder.git

Run ./mono-MDK-windows

This will download Mono from git, a compiled Mono MDK (used as the
"source" for a lot of the non-runtime components), and GTK# for Windows
(ditto). I didn't feel like learning how to build GTK# and F# and
IronPython and Boo and IronRuby on Windows.

However, this will likely break because I make assumptions relating to
the upcoming 3.12 release (my target right now), and master differs in
important ways (i.e. the 4.5-only thing). It also assumes VS2013 is
installed, doesn't massage the Cygwin environment the way the Appveyor
config does, needs an older Mono (for bootstrapping) in $PATH, and so on.

Step 1 is getting it good enough to do everything right in my Windows
VM. Then I can subtree it into the regular github/mono/release.git repo,
and people are encouraged to send pull requests to fix
not-running-on-Jo's-laptop assumptions. FWIW the existing Windows build
system in github.com/mono/release.git/windows-installer/ has a LOT of
running-on-a-former-employee's-desktop assumptions, so at least things
aren't moving backwards per se.

The current status with a primed 3.12 build (`defs/mono download
mono-3.12.0-branch` and `defs/managed-components download
http://path-to-3.12-MDK` where I don't think those MDK builds are public
right now) *should* be fully functional. I did a lot of work on
Thursday/Friday to integrate all the junk we ship with Mac (Boo, IPy,
IR, F#) but haven't tested all those changes as I ran out of time.
Monday is testing/fixing, and posting a "this should work, honest"
preview rather than a "this might partially work" preview.

More information about the Mono-devel-list mailing list