Ruby エラーを解決できません (精神の欠落)
概要
サーバー上で Ruby を使用して何かを実行すると、必ず次のエラーが発生します。
/usr/local/rvm/rubies/ruby-1.9.3-p194/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.
RVM を使用して Ruby を VPS にインストールしました。
スタックオーバーフローの他の問題の指示に従ってパッケージ libyaml をインストールしようとしましたが、無駄でした。
私の VPS がどのタイプのシステムを実行しているのかわかりませんが、apt-get コマンドがありません。それはおいしいです…
解決策
@JunaidKirkire の意見には同意しません。デフォルトで非常に古いバージョンの Ruby を使用する CentOS または Redhat 5 を実行していると思います。RVM を使用する方がはるかに良い方法だと思います。次のようにソースから libyaml をコンパイルするだけで済むと思います。
RVM PKG インストール libyaml
これにより、コンパイル先のディレクトリがわかります。私の場合は、/Users/ehowe/.rvm/usr です。
次に、次のオプションを使用して Ruby を再コンパイルする必要があります。
RVM 再インストール 1.9.3 –with-libyaml-dir=
したがって、私の場合は次のようにします。
RVM インストール 1.9.3 –with-libyaml-dir=/Users/ehowe/.rvm/usr
root として RVM を実行している場合、これは /usr/local/rvm/usr にインストールされます。推奨されているように、ユーザーとして実行している場合は、/home//.rvm/usr になります。