Import Upstream version 20180207
[hcoop/debian/mlton.git] / doc / guide / src / RunningOnCygwin.adoc
1 RunningOnCygwin
2 ===============
3
4 MLton runs on the http://www.cygwin.com/[Cygwin] emulation layer,
5 which provides a Posix-like environment while running on Windows. To
6 run MLton with Cygwin, you must first install Cygwin on your Windows
7 machine. To do this, visit the Cygwin site from your Windows machine
8 and run their `setup.exe` script. Then, you can unpack the MLton
9 binary `tgz` in your Cygwin environment.
10
11 To run MLton cross-compiled executables on Windows, you must install
12 the Cygwin `dll` on the Windows machine.
13
14 == Known issues ==
15
16 * Time profiling is disabled.
17
18 * Cygwin's `mmap` emulation is less than perfect. Sometimes it
19 interacts badly with `Posix.Process.fork`.
20
21 * The <!RawGitFile(mlton,master,regression/socket.sml)> regression
22 test fails. We suspect this is not a bug and is simply due to our
23 test relying on a certain behavior when connecting to a socket that
24 has not yet accepted, which is handled differently on Cygwin than
25 other platforms. Any help in understanding and resolving this issue
26 is appreciated.
27
28 == Also see ==
29
30 * <:RunningOnMinGW:RunningOnMinGW>