Phi*_*man 109 ruby rubygems chruby
在我的工作和家用计算机上,我最近使用了将Ruby升级到2.3.1 ruby-install.我chruby用作我的Ruby切换器.
我开始在终端看到这个警告:
Ignoring bcrypt-3.1.11 because its extensions are not built. Try: gem pristine bcrypt --version 3.1.11
Ignoring bcrypt-3.1.10 because its extensions are not built. Try: gem pristine bcrypt --version 3.1.10
Ignoring binding_of_caller-0.7.2 because its extensions are not built. Try: gem pristine binding_of_caller --version 0.7.2
Ignoring byebug-9.0.5 because its extensions are not built. Try: gem pristine byebug --version 9.0.5
Ignoring byebug-5.0.0 because its extensions are not built. Try: gem pristine byebug --version 5.0.0
Ignoring concurrent-ruby-ext-1.0.2 because its extensions are not built. Try: gem pristine concurrent-ruby-ext --version 1.0.2
Ignoring debug_inspector-0.0.2 because its extensions are not built. Try: gem pristine debug_inspector --version 0.0.2
Run Code Online (Sandbox Code Playgroud)
在我的工作,计算机上,列表要长得多,但很容易解决.当我尝试建议时gem pristine GEM,它告诉我它找不到宝石,所以我跑了gem install GEM,这就解决了.
在家里,没有任何工作.
我尝试过的事情,从常识和其他各种Stack问题:
gem pristine GEMgem pristine --allgem updategem update --systembundle updatebundlerrails(虽然,这不是Rails特定的问题.)~/.bundle/XCode并让它安装一些扩展(它确实需要这样做,但它没有修复任何东西.)brew doctor和解决所有的小问题,然后brew update和brew upgradegem install curb (我无法想象这个宝石与这个问题有什么关系,但是两个不同的人将它列为他们修复同一警告的最后一步.)sev*_*cat 149
我今天遇到了这个问题 - 对于甚至没有安装的宝石都会收到这样的警告!
......好吧,事实证明宝石已经安装了 - 不同于我用chruby设置的红宝石(2.2.3 vs 2.3.1).
切换到所有不同的红宝石并gem pristine --all在所有红宝石上运行解决了这个问题.
ope*_*pes 16
我遇到了这个问题,并遵循了上述所有相同的命令,甚至可以删除我以前安装的所有Ruby版本.但是,错误仍然存在.
事实证明,对于各种(以前未安装的)版本,有一些剩余的宝石~/.gem/ruby/.删除我不再使用的文件夹后,错误消失了.
Mar*_*uch 15
就我而言,警告本身已经提出了解决方案,所以我只是一一运行它们。
Ignoring bigdecimal-2.0.0 because its extensions are not built. Try: gem pristine bigdecimal --version 2.0.0
Ignoring date-3.0.1 because its extensions are not built. Try: gem pristine date --version 3.0.1
Ignoring dbm-1.1.0 because its extensions are not built. Try: gem pristine dbm --version 1.1.0
Ignoring etc-1.1.0 because its extensions are not built. Try: gem pristine etc --version 1.1.0
Run Code Online (Sandbox Code Playgroud)
这里有一个例子:
gem pristine bigdecimal --version 2.0.0
Run Code Online (Sandbox Code Playgroud)
所以运行每一行的命令解决了我的问题。
Seb*_*Kim 11
我做了上面提到的一切,包括
但问题对我来说是一样的。我只是作为最后的希望重新启动了我的 Mac,警告消息消失了。
很奇怪,但如果有人在 StackOverflow 上尝试了所有内容后仍遇到此问题,请尝试重新启动您的机器。
我今天也遇到了这个问题而且很沮丧,因为我无法输入,因为我的整个编辑器都闪烁着红色的错误消息.
我不完全确定究竟是什么导致了它,但我相信这是因为我们安装了多个ruby版本或多个ruby版本管理 器,它们会相互覆盖,否则会破坏你的宝石路径.
gem当你有rbenv和rvm时,该命令也会被覆盖.
通过键入查看您已安装的那些;
which rvm
which rbenv
which chruby
Run Code Online (Sandbox Code Playgroud)
如果安装了其中一个,它将返回一个路径.然后删除它们,确保完全清除所有目录并从干净安装开始.
去掉
这是我为rvm做的事情 ;
rvm implode
gem uninstall rvm
rm -rf ~/.rvm
rm -rf ~/.rvmrc
Run Code Online (Sandbox Code Playgroud)
这是我为rbenv所做的
首先安装https://github.com/bernsie/rbenv-clean,然后
rbenv clean
sudo apt-get remove rbenv
rm -rf ~/.rbenv
Run Code Online (Sandbox Code Playgroud)
重新安装
然后你有一个干净的主目录来工作.我重新介绍了如何在Ubuntu 14.04上安装Ruby 2.1.4的 rbenv .最后;
rbenv rehash
Run Code Online (Sandbox Code Playgroud)
运行一开始gem pristine --all并没有帮助,但后来我意识到:我正在运行的脚本从以下行开始:
#!/usr/bin/ruby
在我的 macOS 系统(Catalina,但我认为这无关紧要)上,这指向系统附带的 Ruby,而不是 RVM 安装的那个。运行gem pristine --all正在修复 RVM 安装,但我的脚本正在调用不同版本的 Ruby。
对我来说,修复方法是使用该env命令调用当前 shell 的PATH. 将脚本的第一行更改为此修复了它:
#!/usr/bin/env ruby
在这里添加我自己的味道。我使用rbenv通过 Homebrew 安装并收到其中四个“忽略...未构建扩展”消息。具体来说:
Ignoring bcrypt-3.1.12 because its extensions are not built. Try: gem pristine bcrypt --version 3.1.12
Ignoring bindex-0.5.0 because its extensions are not built. Try: gem pristine bindex --version 0.5.0
Ignoring bootsnap-1.3.2 because its extensions are not built. Try: gem pristine bootsnap --version 1.3.2
Ignoring byebug-10.0.2 because its extensions are not built. Try: gem pristine byebug --version 10.0.2
Run Code Online (Sandbox Code Playgroud)
我在这个线程中尝试了很多东西,但都没有运气。最后在我的情况下,我做了:
brew uninstall rbenvrm -rf ~/.rbenvbrew install rbenv此时我仍然收到错误消息,但现在我只有一个 Ruby 版本需要处理:
$ rbenv versions
* system (set by /Users/will/.rbenv/version)
Run Code Online (Sandbox Code Playgroud)
在这一点上,我尝试过sudo gem pristine --all但由于系统 Gems 目录的权限而被拒绝。
所以我经历并在每颗宝石上运行原始,就像
sudo gem pristine bcrypt --version 3.1.12 (等等)
最后错误消失了。
| 归档时间: |
|
| 查看次数: |
40894 次 |
| 最近记录: |