小智 44
根据我的经验,节点在cygwin中运行良好,Node通常有EINVAL错误似乎是MINTTY,这是一个默认为cygwin的终端仿真'皮肤'.我仍然不确定为什么这些EINVAL错误100%发生,但以下是我用来使节点工作的步骤和技巧.
在我的/cygwin/home/{username}/.bashrc中,我将节点添加到路径,以便cygwin可以找到它
export PATH=$PATH:"/cygdrive/c/Program Files/nodejs/"
Run Code Online (Sandbox Code Playgroud)
如果您运行32位版本的节点:
export PATH=$PATH:"/cygdrive/c/Program Files (x86)/nodejs/"
Run Code Online (Sandbox Code Playgroud)
然后使npm运行没有Windows到Linux问题我在管理模式下启动cygwin然后运行:
dos2unix '/cygdrive/c/Program Files/nodejs/npm'
Run Code Online (Sandbox Code Playgroud)
此时运行文件和大多数npm软件包都可以在MINTTY中运行,虽然每隔一段时间你就会遇到某些npm软件包作为业力的EINVAL问题.此外,您无法在MINTTY中直接运行解释器,无论何时我想执行以下操作:
cygstart /bin/bash
Run Code Online (Sandbox Code Playgroud)
这将打开一个本机cygwin bash.exe窗口,从这里运行解释器或任何导致EINVAL的令人不安的包命令.这有点糟糕,你必须这样做,但我很少使用这一天,我喜欢MINTTY太多,不能使用它.
另请注意,只需运行以下内容即可在MINTTY中运行任何一行节点代码:
node -e "console.log('hello node')"
Run Code Online (Sandbox Code Playgroud)
对于那些只想安装NPM软件包的人来说,作为troy答案的简单衍生物:
export PATH=$PATH:"/cygdrive/c/Program Files/nodejs/"(显然将Node.js安装目录的路径替换为安装目录).mkdir -p ~/AppData/Roaming/npm.这是所有Windows的错误,而不仅仅是Cygwin.在未来的某个时刻,你将不再需要这样做,但命令不应该有任何负面的副作用.npm install pretty-diff -g.npm bin -g和找到这些npm bin(-g标志是"全局"安装位置).为了让它在Cygwin中运行,你不必做任何特别的事情(虽然我不能说一切是否正常).
| 归档时间: |
|
| 查看次数: |
34945 次 |
| 最近记录: |