无法解决Ruby错误(缺少心理)

12 ruby install vps

每当我在服务器上运行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.
Run Code Online (Sandbox Code Playgroud)

我使用RVM将Ruby安装到我的VPS上.

我已libyaml按照Stack Overflow上的其他问题的指示尝试安装软件包,但无济于事.

我不确定我的VPS运行的是什么类型的系统,但它没有apt-get命令.它有yum......

Eug*_*ene 18

我不得不同意@JunaidKirkire,因为我认为你运行的是CentOS或Redhat 5,默认使用的是旧版本的Ruby,我认为使用RVM是一个更好的方法.我相信您只需要使用以下内容从源代码编译libyaml:

rvm pkg install libyaml

这将告诉你它正在编译的目录,在我的例子中,它是 /Users/ehowe/.rvm/usr

然后,您需要使用以下选项重新编译Ruby:

rvm reinstall 1.9.3 --with-libyaml-dir=$directory_that_rvm_installed_libyaml_to

所以在我的情况下,我会这样做:

rvm install 1.9.3 --with-libyaml-dir=/Users/ehowe/.rvm/usr

如果您以root用户身份运行rvm,则会将其安装到/usr/local/rvm/usr.如果您按照建议的那样以用户身份运行它,那就是/home/$user/.rvm/usr


Jul*_*ann 12

我有这个问题,安装libyaml没有帮助.事实证明,心理需要libyaml-devel.我在centos6上所以我这样做了:

curl -O http://www6.atomicorp.com/channels/atomic/centos/6/x86_64/RPMS/atomic-release-1.0-14.el6.art.noarch.rpm

sudo  rpm -Uvh atomic-release-1.0-14.el6.art.noarch.rpm

sudo yum install libyaml-devel

rvm reinstall 1.9.3-p194
Run Code Online (Sandbox Code Playgroud)


cod*_*kee 8

在基于RHEL的发行版(如CentOS 6.x)上,您需要添加另一个yum存储库,例如包含libyaml-devel包的EPEL.

EPEL的密钥下载 EPEL的
RPM

更多信息:

还建议使用yum-plugin-priorities

添加EPEL Yum存储库

rpm --import http://dl.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-6
rpm -Kih http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
Run Code Online (Sandbox Code Playgroud)

通过yum安装libyaml-devel

yum -y install libyaml-devel
Run Code Online (Sandbox Code Playgroud)

Dependencies Resolved

====================================================================================
 Package                       Arch         Version           Repository       Size
====================================================================================
Installing:
 libyaml-devel                 x86_64       0.1.3-1.el6       epel             84 k
Installing for dependencies:
 libyaml                       x86_64       0.1.3-1.el6       epel             52 k

Transaction Summary
====================================================================================
Install       2 Package(s)
Run Code Online (Sandbox Code Playgroud)