Cygwin - 无法运行ruby命令

时间:2015-02-05 23:42:56

标签: ruby linux unix cygwin

当我在cygwin中运行ruby -v时,它会向我显示我在Windows中安装的ruby。仅供参考 - 我从未在我的cygwin安装中安装任何红宝石。

但是当我运行gem list时,我收到错误:

 /cygdrive/c/ruby/bin/gem: 
 C:/dev/ruby/bin/ruby.exe^M: bad interpreter: Permission denied

我用Google搜索并发现了很多这个问题。但没有人解释它的含义以及它为什么会发生。有人可以帮我解答这些问题并帮我解决这个问题吗?

非常感谢!

1 个答案:

答案 0 :(得分:2)

在cygwin下,最好的办法是运行cygwin版本的ruby,使用cygwin安装工具进行安装。

可以使用常规ruby,但是你会遇到这样的互操作性问题。

你在这里看到的是抱怨{" shebang"结尾处的^M的shell。 gem脚本的行(第一行告诉它要使用的解释器)。这个^M是windows环境中的一个人工制品,其中所有行都以此字符结尾,以及unix单独使用的换行符。

您可以通过删除新行来解决此问题,例如在dos2unix上使用gem命令,但在您遇到进一步的问题之前不久...