ただのにっき
2014-12-25(木) [長年日記]
■ ruby 2.2.0がリリースされたのでさっそく入れた(そして少しはまった)
例年どおりのクリスマスリリースが予定されているrubyの2.2.0。ちゃんと今日中に出そうな雰囲気だったので、リリースされたらたぶん@hsbtが最初に動くだろうと睨んでruby-buildのリポジトリといっしょに監視してたら案の定だったので、ソッコーで:
~/.rbenv/ruby-build % git pull ~/.rbenv/ruby-build % rbenv install 2.2.0 : linking shared-object fiddle.so /usr/bin/ld: ./libffi-3.2.1/.libs/libffi.a(raw_api.o): relocation R_X86_64_32S against `.rodata' can not be used when making a shared object; recompile with -fPIC ./libffi-3.2.1/.libs/libffi.a: could not read symbols: Bad value collect2: error: ld returned 1 exit status make[2]: *** [../../.ext/x86_64-linux/fiddle.so] Error 1 :
ええええー。rc1はちゃんとビルドできてたもん、おれ悪くないもん……。
Twitterで呟いたらコミッタ陣が反応してくれたので、ログを見せたり。libffiは入ってるのになぜか同梱されてるlibffiをビルドしようとしてコケてる、そもそもこのタスクが走るのがおかしいんじゃね? みたいな流れらしいので、問題だと認識されれば直ると思われ。
ちなみにDebianでは「libffi-devパッケージを入れる」ことで回避できるそうだ:
% sudo apt-get install libffi-dev % rbenv install 2.2.0 % ruby -v ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-linux]
(とりあえずは)めでたし。