lux*_*ock 14 windows emacs cygwin node.js
我从常规命令提示符运行node.exe没有问题:
C:\>node --interactive
> console.log("Works fine");
Works fine
Run Code Online (Sandbox Code Playgroud)
但是当我尝试从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
Run Code Online (Sandbox Code Playgroud)
起初我以为可能是因为Cygwin在路径名中有空格(C:\ Program Files \nodejs)有问题,但是在将node.js安装到路径名中没有空格的目录之后我无法解决问题.
我想使用js-comint从Emacs(从Cygwin运行)运行Node JS控制台,但我遇到了这个错误并且不知道如何解决它.
我认为这是由于在cygwin中使用win发行版引起的,因为cygwin模拟了一个*nix环境,而windows.ats的windows.js寻找的是win库而不是nix的.为了让node.js在cygwin中工作,你必须将它构建为yourslef.最新版本也不适用于cygwin.
来自官方维基的现状:尽管符合POSIX标准,但不再支持Cygwin.编译的最新版本是0.4.12
https://github.com/nodejs/node/wiki/Installation#building-on-cygwin
尝试通过ssh从Ubuntu框连接到windows/cygwing/sshd时会发生类似的问题.
修好路径后,运行
节点
似乎挂起(忽略所有输入)但通过ctrl-C响应kill
然而跑步
节点 - 交互
工作正常,除了EOF字符似乎是ctrl-Z而不是正常的unix/cygwin ctrl-D