<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="generator" content="Asciidoctor 2.0.23">
<title>RunningOnCygwin</title>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic%7CNoto+Serif:400,400italic,700,700italic%7CDroid+Sans+Mono:400,700">
<link rel="stylesheet" href="./asciidoctor.css">
<link rel="stylesheet" href="./mlton.css">

</head>
<body class="article">
<div id="mlton-header">
<div id="mlton-header-text">
<h2>
<a href="./Home">
MLton
20241230
</a>
</h2>
</div>
</div>
<div id="header">
<h1>RunningOnCygwin</h1>
</div>
<div id="content">
<div id="preamble">
<div class="sectionbody">
<div class="paragraph">
<p>MLton runs on the <a href="http://www.cygwin.com/">Cygwin</a> emulation layer,
which provides a Posix-like environment while running on Windows.  To
run MLton with Cygwin, you must first install Cygwin on your Windows
machine.  To do this, visit the Cygwin site from your Windows machine
and run their <code>setup.exe</code> script.  Then, you can unpack the MLton
binary <code>tgz</code> in your Cygwin environment.</p>
</div>
<div class="paragraph">
<p>To run MLton cross-compiled executables on Windows, you must install
the Cygwin <code>dll</code> on the Windows machine.</p>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_known_issues">Known issues</h2>
<div class="sectionbody">
<div class="ulist">
<ul>
<li>
<p>Time profiling is disabled.</p>
</li>
<li>
<p>Cygwin&#8217;s <code>mmap</code> emulation is less than perfect.  Sometimes it
interacts badly with <code>Posix.Process.fork</code>.</p>
</li>
<li>
<p>The <a href="https://raw.github.com/MLton/mlton/master/regression/socket.sml"><code>socket.sml</code></a> regression
test fails.  We suspect this is not a bug and is simply due to our
test relying on a certain behavior when connecting to a socket that
has not yet accepted, which is handled differently on Cygwin than
other platforms.  Any help in understanding and resolving this issue
is appreciated.</p>
</li>
</ul>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_also_see">Also see</h2>
<div class="sectionbody">
<div class="ulist">
<ul>
<li>
<p><a href="RunningOnMinGW">RunningOnMinGW</a></p>
</li>
</ul>
</div>
</div>
</div>
</div>
<div id="mlton-footer">
<div id="mlton-footer-text">
<div>
Last updated Thu Oct 21 15:53:06 2021 -0400 by Matthew Fluet.
<a href="https://github.com/MLton/mlton/commits/master/doc/guide/src/RunningOnCygwin.adoc">Log</a>
<a href="https://github.com/MLton/mlton/edit/master/doc/guide/src/RunningOnCygwin.adoc">Edit</a>
</div>
</div>
</body>
</html>