<div dir="ltr"><div>If you have git installed on windows, it comes with a bash shell. Git works, rebar works, C drivers work with visual studio, which those "fake" developers are probably using anyway.<br><br><br></div>Sergej<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, May 20, 2015 at 10:33 AM, Loïc Hoguin <span dir="ltr"><<a href="mailto:essen@ninenines.eu" target="_blank">essen@ninenines.eu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
Yesterday the topic of Windows development was brought up on Twitter. I looked into it and it's clearly an issue. At best you can compile projects that don't involve shell scripts, makefiles or C code, so you can't really work on anything significant as a large number of open source projects involve one or the other (yes, even when using rebar).<br>
<br>
Now there's three ways Erlang could be more friendly to Windows developers:<br>
<br>
To use Windows tools imply making open source projects work for Windows. Sure perhaps it's not an issue for the simplest NIFs but some projects require C libraries which themselves aren't always easy to make work on Windows.<br>
<br>
MingW has the same issues. You need to fix everything to work on Windows.<br>
<br>
Cygwin makes this much easier. Everything seems to work... except Erlang. Erlang on Cygwin thinks it runs on win32 and, while true to a certain extent, it fails badly when dealing with files (cygwin has / as root while win32 has c:\).<br>
<br>
Now you might say Cygwin is massive. That's true, it takes some time to install and some space on the disk. But it's very easy to install and can be almost entirely automated using chocolatey and apt-cyg. And adding an SSH server on top of that is a couple commands away, so it is a very interesting solution if you ask me.<br>
<br>
Now Erlang compiles on Cygwin... but produces the win32 target. Which brings me to the main subject of this email: what would it involve to make Erlang work on Cygwin? Considering Cygwin is a mix of Windows and Linux it's probably just about enabling one or another piece of code, or is it?<br>
<br>
It could be a fine side project but I don't really know where to start. Any tips appreciated.<br>
<br>
PS: tried just patching os:type()... that didn't work. Ended up with Erlang not finding a file that existed on disk when running common_test.<br>
<br>
PPS: I know "real" developers use Unix. But the more numerous "fake" developers might be more interested in Erlang if they can keep their OS.<br>
<br>
PPPS: I know this isn't a good option if you're going to create Photoshoperl, but it's still a good option for server application development.<span class="HOEnZb"><font color="#888888"><br>
<br>
-- <br>
Loïc Hoguin<br>
<a href="http://ninenines.eu" target="_blank">http://ninenines.eu</a><br>
_______________________________________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org" target="_blank">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://erlang.org/mailman/listinfo/erlang-questions</a><br>
</font></span></blockquote></div><br></div>