missing psych

来源:互联网 发布:查linux系统版本 编辑:程序博客网 时间:2024/06/06 08:55

acer@ubuntu:/$ gem update
/usr/local/ruby193p0/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.
Updating installed gems

发现还有一种可能就是,即使你安装了YAML,如果用户不同,安装和访问权限的不同也会导致这个问题。

解决:su 切换到root账户再执行就ok。

但是,运行时又不能使用root,就只能使用acer帐户;故删除ruby193p0目录

sudo rm -r /usr/local/ruby193p0

再在acer帐户下执行:gem -v

1.8.17

ruby -v

1.9.3p0



-------------------------------------以下是转载--------------------------------------------------------------------------------------

Ruby 1.9.3-p0 makes psych—the replacement for 1.8.7’s YAML library, Syck—the defaultYAML parser. Psych is a wrapper around libyaml, so you’re going to need it installed and configuredbefore installing Ruby.

If you install 1.9.3-p0 without libyaml, you’ll see warnings like this:

It seems your ruby installation is missing psych (for YAML output).To eliminate this warning, please install libyaml and reinstall your ruby.

Installing libyaml

$ wget http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz$ tar xzvf yaml-0.1.4.tar.gz$ cd yaml-0.1.4$ ./configure --prefix=/usr/local$ make$ make install

Quick review of what’s going on: download and untar the source code, change to the directory and install the package. You may need to sudo themake install command. Your mileage may vary.

Installing Ruby 1.9.3-p0

$ wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p0.tar.gz$ tar xzvf ruby-1.9.3-p0.tar.gz$ cd ruby-1.9.3-p0$ ./configure --prefix=/usr/local --enable-shared --disable-install-doc --with-opt-dir=/usr/local/lib  最好不要这个配置,采用默认。$ make$ make install

After installing, you can verify that Ruby was installed with ruby -v. It’s also worth tryinggem --version to make sure you don’t get any errors regarding psych.

I tried installing libyaml-devel and libyaml from Yum, but couldn’t get ruby installed and recognizing those packages. Out of frustration, I turned to installing libyaml by source and it Just Worked™.

By Brian Ryckbost on October 31, 2011 in how-to, install,libyaml,ruby, andyaml
Tweet
原创粉丝点击