加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 带有RVM的Ruby 2.1.1:获取libyaml错误

发布时间:2020-12-17 03:48:56 所属栏目:百科 来源:网络整理
导读:我想使用 Ruby 2.1.1p76和Rails 4.1.0beta1.我在使用RVM时遇到了一些错误.我使用的是Ruby 2.0.0和Rails 4.0.0.我升级到OS X Mavericks 10.9.2并需要重新加载所有内容. 无论如何,这些是我正在运行的命令. curl -sSL https://get.rvm.io | bash -s stable --r
我想使用 Ruby 2.1.1p76和Rails 4.1.0beta1.我在使用RVM时遇到了一些错误.我使用的是Ruby 2.0.0和Rails 4.0.0.我升级到OS X Mavericks 10.9.2并需要重新加载所有内容.

无论如何,这些是我正在运行的命令.

curl -sSL https://get.rvm.io | bash -s stable --ruby

这安装成功.然后我运行此命令来安装rails.

sudo gem install rails

我得到以下错误,说它正在寻找libyaml.

/Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/yaml.rb:4:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning,please install libyaml and reinstall your ruby.
/Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': dlopen(/Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/x86_64-darwin13.0/psych.bundle,9): Library not loaded: /usr/local/lib/libyaml-0.2.dylib (LoadError)
  Referenced from: /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/x86_64-darwin13.0/psych.bundle
  Reason: image not found - /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/x86_64-darwin13.0/psych.bundle
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/psych.rb:1:in `<top (required)>'
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/yaml.rb:5:in `<top (required)>'
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems.rb:616:in `load_yaml'
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/config_file.rb:328:in `load_file'
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/config_file.rb:197:in `initialize'
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/gem_runner.rb:74:in `new'
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/gem_runner.rb:74:in `do_configuration'
      from /Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/gem_runner.rb:39:in `run'
      from /Users/username/.rvm/rubies/ruby-2.1.1/bin/gem:21:in `<main>'

所以,我运行这个不推荐使用的命令.

rvm pkg install libyaml

这给了我一个弃用警告,并说要检查autolibs.

所以我纠正并验证两者.

brew install libyaml
##
Warning: libyaml-0.1.4 already installed

更多…

brew info libyaml
##
libyaml: stable 0.1.5 (bottled)
http://pyyaml.org/wiki/LibYAML
/usr/local/Cellar/libyaml/0.1.4 (7 files,344K) *
  Built from source
From: https://github.com/mxcl/homebrew/commits/master/Library/Formula/libyaml.rb
==> Options
--universal

安装autolibs.

rvm get stable --autolibs=enable
rvm install ruby
rvm --default use ruby-2.1.1

然后,我得到了同样的错误.

Using /Users/username/.rvm/gems/ruby-2.1.1
/Users/username/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/yaml.rb:4:in `<top (required)>':
It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning,please install libyaml and reinstall your ruby.

解决方法

brew unlink libyaml && brew link libyaml

https://github.com/wayneeseguin/rvm/issues/2689

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读