[wg-windows] Status of the OCaml Installer for Windows: the way forward?
Jonathan Protzenko
jonathan.protzenko at gmail.com
Fri May 29 20:02:34 BST 2015
Dear OCaml-on-Windows aficionados,
I thought I'd give a quick update on the status of my installer and more
generally the way I see things moving forward in the OCaml for Windows
ecosystem.
About the installer: it hasn't been updated for a while. I'll issue a
new release shortly. I'll drop the ActiveTCL step (no stable URL, causes
problems) and I'll also drop Emacs (I don't think anyone uses that setup
for real).
About the way forward: there's two assumptions that I'd like to bring to
this mailing-list.
- Most OCaml packages need / assume a Unix-ish environment to build.
- Binary packages are likely not going to happen soon.
Therefore, what is urgently needed is:
i) an installer that brings you the bare minimum (ocaml, flexdll, plus
perhaps camlp4, ocamlfind and batteries), and
ii) a unix-ish environment to make sure tools like ocamlbuild find the
required utilities such as "bash" that they (infortunately) require in
order to run, and
iii) a way to distribute the toolchain (the assembler, a.k.a.
i686-mingw-w64-as) required by ocaml (more precisely, by flexdll),
iv) a package manager that can take it from there and fetch/compile the
rest.
The installer I provide satisfies i). Since it installs Cygwin, ii) and
iii) are satisfied as well, because cygwin packages the /native/
compilers from the mingw64 project. The only remaining pain point is
iv), and for that I really think we need OPAM to work out of the box on
Windows.
Once OPAM works superbly well, we won't need the installer anymore, because:
- OPAM will be distributed as a statically-linked binary, that
- takes care of installing even the OCaml compiler itself, and
- is capable of installing the remaining binaries, as long as
- the user operates in a cygwin environment so as to get bash, sed, and
the toolchain from mingw.
Please keep in mind that we're only talking of Cygwin as a way to get a
Unix-ish environment. In the scenario outlined above, the OCaml
compilers are, and generate, native windows programs.
Of course, that's a very biased point of view, but I'd be happy to hear
other's thoughts as to what exactly this doesn't fit their needs!
Best,
Jonathan
More information about the wg-windows
mailing list