Skip to content

Windows Port (MSVC)

raycohen edited this page Nov 30, 2011 · 7 revisions

Note: this page is now really outdated. Although not finished, a mingw port is coming along.

Overview of issues and checklist for a port of Node.js to Windows using MinGW.

Discussion

Discussions form mailing list about Windows compilation and re-distribution.

Rationale

Stab at a mission statement, open for argument.

Node.js is thriving in its native UNIX environment, so why would you want to support a broken operating system?

Because it is prevalent. There are people who are developing applications for desktop distribution, where Windows still has the majority market share. These developers would like to see Node.js running everywhere, which is a laudable goal. It would be a shame to pollute the efficient UNIX implementation with Windows idioms, however. A port for Windows should permit operation on Windows for those developers that are willing to suffer Windows, but a port for Windows must not punish the truly amazing efficiency and concise expression of Node.js in its native environment.

Roadmap

Taken from discussions in mailing list.

Bert Belder suggests the following strategy in Node on Windows with Cygwin: Necessary Files.

The good news is that we don’t have to ‘big bang’ switch from cygwin to using windows apis as cygwin makes it possible to mix posix and windows api calls. It for example provides a function that converts an FD to a windows handle and vice versa.

We can move from Cygwin to MinGW a piece at a time. Below are tasks taken from discussion.

Potential Supporters

People who have expressed interest in a Windows port on the mailing list.

  • Simon Sturmer.
  • Alan Gutierrez.
  • Chris Winberry.
  • Ryan Dahl.
  • Peter Hewat.
  • Bert Belder.
  • Oliver Morgan.
  • Marak Squires.
  • Joshaven Potter.
  • Matthew Tyson.
  • Daniel Earwicker.
  • Neville Burnell.
  • Howard Rauscher.
  • Maxim Mossienko.
  • Howard Rauscher.
  • Elijah Insua – Forked Node.js for Windows development at one point according to Windows port. Really old fork lives here. This was an attempt to port the now non-existent coupling dependency to windows.
Clone this wiki locally