Node.js Cygwin不支持
我正在尝试安装node.js. 我跟着这个教程 ,我被困在中间。
当我在我的cygwinterminal写入./configure
,它说“cygwin不支持”。 请帮助我提前谢谢。
我的经验中的节点在cygwin中运行良好,Node中通常有EINVAL错误的东西似乎是MINTTY,它是默认为cygwin的terminal仿真“皮肤”。 我仍然不确定为什么这些EINVAL错误发生100%,但以下是我使用节点工作的步骤和技巧。
在我的/cygwin/home/{username}/.bashrc我添加节点的path,所以cygwin可以find它
export PATH=$PATH:"/cygdrive/c/Program Files/nodejs/"
如果您运行一个32位版本的节点:
export PATH=$PATH:"/cygdrive/c/Program Files (x86)/nodejs/"
然后为了使npm在没有windows的情况下运行到linux问题,我以pipe理员模式启动cygwin,然后运行:
dos2unix '/cygdrive/c/Program Files/nodejs/npm'
在这一点上运行文件和大多数npm包将运行在MINTTY就好了,虽然每过一段时间你都会碰到EINVAL问题,因为某些npm包作为业力。 你也不能在MINTTY中直接运行解释器,任何时候我都想要做这些事情:
cygstart /bin/bash
这将打开一个本地的cygwin bash.exe窗口,从这里你运行解释器或任何令人不安的包命令,导致一个EINVAL。 它有点吮吸你必须这样做,但我很less使用这一天,我喜欢敏捷太多,不使用它。
另外请注意,只要运行如下所示的命令,即可在MINTTY中运行任何一行代码:
node -e "console.log('hello node')"
对于那些只是想要安装NPM软件包的人来说,作为一个简单的衍生物:
- 使用Windows安装程序包安装Node.js。
- 将PATHjoin到
export PATH=$PATH:"/cygdrive/c/Program Files/nodejs/"
(显然replaceNode.js安装目录的path)。 - Windows版本中存在一个当前的bug,可以通过运行
mkdir -p ~/AppData/Roaming/npm
。 这是所有Windows的错误,而不仅仅是Cygwin。 在将来的某个时候,你不必再这样做,但是这个命令不应该有任何负面影响。 - testing它。 例如,
npm install pretty-diff -g
。 - 为了能够运行新安装的软件,您需要将安装位置添加到PATH。 你可以用
npm bin -g
和npm bin
find这些(-g
标志是“全局”安装位置)。
没有什么特别的,你必须做,以使其在Cygwin运行(虽然我不能说,如果一切正常)。
使用Console2,它允许您运行CLI shell的创build选项卡。 看来在console2里面运行cygwin允许我使用节点REPL就好了。 我不知道为什么:P
按照这个指导来添加cygwin到console2:
http://blog.msbbc.co.uk/2009/11/configuring-console-2-and-bash-with.html
有了Bjørn的build议( 使用Console2 )和Soyuka的别名( 这里的步骤 ),我的node.js v0.10.13和npm v1.3.2现在在Babun v1.02 (Cygwin发行版)下工作。
对于Windows,只需在cmd中运行bash.exe,这样就可以直接使用cmd控制台运行bash,这可以支持所有节点运行。
C:\Users\郷>bash郷@CHIGIX ~ $ node >
抓住并运行Windows安装程序。
在Cygwin提示typesnode
看看它是否有效。
在Windows中,运行Cygwin.bat(而不是Cygwinterminal),然后在那个运行节点上:查看并回答这个问题。