« PHPのコマンドライン実行 Main Emacsでsmart-find.el »

Ruby gemが更新できない

ちょっと古いサーバ上のRuby (1.9.3p327) でRailsをgemでインストールしようとすると、Unsupported digest algorithm (sha256)のエラーが…。
[code]
$ gem install rails
ERROR: Error installing rails:
invalid gem: package is corrupt, exception while verifying: Unsupported digest
algorithm (SHA512). (RuntimeError) in /usr/local/lib/ruby/gems/1.9.1/cache/atomic-1.1.14.gem
[/code]
検索すると、Ruby自体コンパイルする際のopensslのバージョンが古かったためらしい…。

Rubyを再コンパイルすればいい(しかない)ということらしいが、サーバが古いためうまくいくかどうか…。あー、っていうか、OpenSSLから入れ替えないといけないのか…。

[追記]
OpenSSLを"0.9.7l 28 Sep 2006"から"1.0.1e 11 Feb 2013"に更新

して、Rubyも更新インストールしてみたら、gem installが動作するようになったが、今度は新たなエラーが…。
[code]
$ sudo gem install rails
Building native extensions. This could take a while...
ERROR: Error installing rails:
ERROR: Failed to build gem native extension.

/usr/local/bin/ruby extconf.rb
creating Makefile

make
compiling atomic_reference.c
atomic_reference.c:75:2: #error No CAS operation available for this platform
make: *** [atomic_reference.o] エラー 1

Gem files will remain installed in /usr/local/lib/ruby/gems/1.9.1/gems/atomic-1.1.14
for inspection.
Results logged to /usr/local/lib/ruby/gems/1.9.1/gems/atomic-1.1.14/ext/gem_make.out
[/code]
どうやら、gccも古いということらしい…。
[code]
$ gcc -v
 ...
gcc バージョン 3.3.6 release (Vine Linux 3.3.6-0vl7)
[/code]

さて、gccを更新すれば作業は終わるのか…?

Leave a comment

Your comment