RubyKaigi 2017 1日目

カンファレンスに行く理由のひとつである、コミッターに直接相談ができる機会というあたりに焦点を絞って書く。

いつの日だったか rbenv install 2.5.0-devRuby のビルドエラーが起きるようになって、調べたところこのコミット以降ということは分かったが、他の人の環境では問題がなかったため手元の libtool のバージョン問題というあたりまでで近日開催の RubyKaigi まで持ち越していた。

% make
(snip)
rbconfig.rb unchanged
generating enc.mk
making srcs under enc
make[1]: Nothing to be done for `srcs'.
generating transdb.h
transdb.h unchanged
creating verconf.h
verconf.h updated
compiling loadpath.c
linking static-library libruby.2.5.0-static.a
error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: unknown option character `n' in: -no_warning_for_no_symbols
Usage: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool -static [-] file [...] [-filelist listfile[,dirname]] [-arch_only arch] [-sacLT]
Usage: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool -dynamic [-] file [...] [-filelist listfile[,dirname]] [-arch_only arch] [-o output] [-install_name name] [-compatibility_version #] [-current_version #] [-seg1addr 0x#] [-segs_read_only_addr 0x#] [-segs_read_write_addr 0x#] [-seg_addr_table <filename>] [-seg_addr_table_filename <file_system_path>] [-all_load] [-noall_load]
make: *** [libruby.2.5.0-static.a] Error 1

講演の合間の休憩時間になるタイミングで nobu さんに相談して、以下のようにパッチをあてて頂いていた。

github.com

手元の環境は OS X 10.9 という 4年くらい前のモデルで、libtool が以下のように 855 と結構古い。そのためいまどきのバージョンと比べてオプションが足りていないといったのが今回の問題だった。

% libtool -V
Apple Inc. version cctools-855

RuboCop’s core developers team の pocke さんには、NodePattern で 0か 1を表す表現はないものか相談していたりした。これはデフォルト引数のありなしでパターンを複数書かずに済めばと思ったのが背景。結果としては話として挙っていたが動きとして止まっているとのこと。

また度々、yahonda さんに Oracle enhanced adapter の相談をしたり話を聞いたりしていたりして、ふだん使っている Ruby とその周辺の Gem の開発者にいろいろと相談することができていろいろと悩みなど解消した。