Solaris 10上的Ruby 1.9.3 + Rails - 缺少libyaml

时间:2012-06-18 17:10:40

标签: ruby solaris

我正在尝试在Solaris 10上安装Ruby on Rails。我设法从源代码构建Ruby 1.9.3并且我安装了gem,但是当我每次收到此消息时都运行gem命令:

# gem list
/usr/local/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.

这真是令人讨厌:)

所以我尝试重建Ruby,这是我在make的输出中注意到的。

configuring psych
libyaml is missing. Please install libyaml.
Failed to configure psych. It will not be installed.

我找到了检查它的extconf.rb脚本,我尝试手动运行它:

# pwd
/root/pub/ruby-1.9.3-p194/ext/psych
#
# irb --simple-prompt
>> require 'mkmf'
=> true
>> find_header 'yaml.h'
checking for yaml.h... yes
=> true
>> find_library 'yaml', 'yaml_get_version'
checking for yaml_get_version() in -lyaml... yes
=> true
>> exit

显然extconf.rb可以找到libyaml,但make不能。所以我很困惑为什么make没找到它。有什么想法吗?

3 个答案:

答案 0 :(得分:0)

在线有关于在Solaris上安装Rails的一些演练。

这适用于Rails 3:https://www.machine-unix.com/2011/05/installing-rails3-on-solaris-10-910/

这篇文章讨论了避免不兼容库的问题:http://www.nowastedmoves.com/2009/geekery/installing-ruby-on-rails-on-solaris-10-1008-2/

我从来没有在Solaris上试过这个,但希望这会有所帮助。

答案 1 :(得分:0)

我在Mac OS上遇到过这个问题,也许有帮助:http://icodeapps.net/?p=8

答案 2 :(得分:0)

您需要安装libyaml。

如果您从预构建的软件包安装libyaml,您可能需要一个带有开发标头的独立软件包,通常是“libyaml-dev”或类似软件。

您也可以install libyaml from source

  

下载源包:   http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz。要构建和安装LibYAML,请运行:

$ ./configure
$ make
# make install

(注意最后一行以#开头,表示一个root shell,在以普通用户身份运行时前置sudo。)

然后在安装libyaml之后重新配置并重新编译Ruby。