我从常规命令提示符处运行node.exe没问题:
C:\>node --interactive > console.log("Works fine"); Works fine
但是,当我尝试从Cygwin控制台执行相同的操作时,遇到了以下问题:
Olli@Olli-MBRr /cygdrive/c $ node.exe events.js:72 throw er; // Unhandled 'error' event ^ Error: read ENOTCONN at errnoException (net.js:900:11) at Socket._read (net.js:391:21) at Socket.Readable.read (_stream_readable.js:320:10) at Socket.read (net.js:293:43) at new Socket (net.js:185:10) at process.stdin (node.js:660:19) at startup (node.js:145:16) at node.js:901:3
起初我以为可能是因为Cygwin在路径名称中带有空格(C:\ Program Files \ nodejs)时遇到了麻烦,但是将node.js安装到路径名称中没有空格的目录后,我无法解决问题。
我想使用js-comint从Emacs(从Cygwin运行)运行Node JS控制台,但是遇到了该错误,不知道如何解决。
我认为这是由于在cygwin中使用win发行版引起的,因为cygwin模拟了* nix环境,而Windows的node.js查找的是win库而不是nix的库。为了使node.js在cygwin中工作,您必须自己构建它。同样,最新版本在cygwin上不起作用。
官方Wiki的当前状态: 尽管兼容POSIX,但不再支持Cygwin。 编译的最新版本是0.4.12
https://github.com/nodejs/node/wiki/Installation#building-on- cygwin