Ruby 一个问题 +__rvm_make:0> make -j4,答案竟是杀毒软件,杀了我 5 个小时。

chentianwei411 · 2018年06月09日 · 最后由 IChou 回复于 2018年06月10日 · 1394 次阅读

这些都是经过:

莫名其妙的 rails app 不能用了,rails -v 一查发现不存在。ruby -v 发现是 2.0 的版本。很着急上火,因为很少使用过 rvm 这个 ruby 版本控制器。所以照官网文档。从新安装 ruby,然后发现还是 rail 没有安装,后来决定从新安装 rails。 $ rvm gemset update,可以全部更新 gem。于是我就更新了,rails app 也可以用了。这就是悲剧的开始😢😢😢。

突然,发现 rails 的命令 在编译器根本不动,连 rails -h 都很慢,像🐢。

查找谷歌没答案,stack overflow 找到一条类似问题,没有加🌟的回答,看了一下评论疑似 gem 安装太多的话会让程序变慢。

于是我想到了自动更新 gem 的命令。先尝试更换当前使用的 ruby 版本,使用 rvm default use 2.4.0 但仍然很慢。

于是看官网操作,准备删除所有安装的 gem.不过不明白 empty 和 delete 的区别。

先尝试 empty。用 rvm gemset empty,提示满屏幕的 uninstalled XXX。果然全部删除了,但保留了这个 gemset。但是正常一会,又不行了 rails generate -h 都超慢。

无奈之下祭出大招,rvm remove ruby-2.31 和之前的版本,然后再次 rvm gemset empty.

彻底删除 ruby 再从新安装又报告错误,安装不了。删除 rvm,删除命令:rvm implode(不会很干净,我怕影响后续安装 ruby,还查找方法试图干净删除)。

可是安装完 rvm 后,安装 ruby,还是报告错误❌,此时的我还没有学会仔仔细细的看报错的内容。

看 ruby-china 上的解决办法,各类网页。断断续续花费了 3-4 个小时。

耐心看 log,没有遇到和我完全一样的错误,别人的错误的解决方法不适合我。自己也尝试了别的方法,

比如:网上有说可能是编译的问题,而编译问题一般是 xcode 的问题,尝试 xcode-select --install,没用。

抑郁了。。。

在 ruby-China 上继续浏览相关文章。发现一篇文章提示,应该把关键的错误信息粘体到谷歌上面,再看看 log.估计有关键信息我遗漏了。⬇️是 make.log

在.rvm/log/../make.log 中:

+rvm_make:0> make -j4 <中间略> error: error reading '/dev/fd/8' 1 error generated. clang: error: unable to remove file: Operation not permitted dtrace: failed to compile script probes.d: Preprocessor failed to process input program make: *** [probes.h] Error 1 make: *** Waiting for unfinished jobs.... +rvm_make:0> return 2

error: error reading '/dev/fd/8' 放到谷歌上查找:竟然第一条就是解决办法!!!https://github.com/rvm/rvm/issues/4313

答案是:I have had a similar problem "error: error reading '/dev/fd/7'". In my case it helped to deactivate the antivirus software Avira.使反病毒程序小红伞无效。惊人!!!杀毒软件,😢

没必要装杀毒软件啊,如果有用 QQ 或者看黄网的需求,用虚拟机好了

2 楼 已删除

所以遇到错误

正确操作:看日志,找信息,查 issues

无脑操作:卸了重来,我就不信了……

需要 登录 后方可回复, 如果你还没有账号请 注册新账号