3

Rails を rvm でインストールした後、次のエラーに直面しました。

/afs/andrew.cmu.edu/usr11/kvudata/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/yaml.rb:56: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.

もう少し情報を得るために、私は irb に行き、'psych' を要求しようとしました:

1.9.3-p327 :001 > require 'psych'
LoadError: libyaml-0.so.2: cannot open shared object file: No such file or directory -/afs/andrew.cmu.edu/usr11/kvudata/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/x86_64-linux/psych.so

しかし、検索しようとしている指定された場所に移動すると、psych.so存在します!

ruby をアンインストールして再インストール、アンインストールして libyaml をソースからコンパイルしてから ruby​​ を再インストールしてみましたが、エラーが消えません。

4

1 に答える 1

3

これは「本当の」解決策のようには感じませんが、私は物事を機能させることができました。

私の場合、libyamlはにインストールされてい/usr/local/libます。そのパスを環境変数に追加すると、うまくいきました(共有ライブラリに触発されました)。.bash_profileに以下を追加しました

LD_LIBRARY_PATH=/usr/local/lib
export LD_LIBRARY_PATH

私のように、capistranoでこれを機能させようとしている他の訪問者の場合、これを私のdeploy.rbに追加すると機能します。

set :default_environment, {'LD_LIBRARY_PATH' => '/usr/local/lib'}

より多くの情報に基づいた提案を楽しみにしています。

于 2012-11-27T03:16:16.030 に答える