https://github.com/rubygems/rubygems/issues/8015 としてまとめて @nobu と調べていたのだが、ここ最近 gem install
できないという内容で似たようなエラーが報告されていたのは rvm が使うバイナリと rvm のインストール処理が原因だった。
rvm は自分自身がビルドしたものと Travis が作っているバイナリの2箇所からバイナリを持ってきてインストールさせるのだけど、Travis が作った Linux 向けのバイナリは clang を使っていてそれに準じた CFLAGS が rbconfig に定義されるのだけど、rvm がそれを無視して gcc をインストールしたうえで rbconfig の CC を書き換えるということで C 拡張の gem をインストールができなくなっているという現象だった。
こうなると RubyGems であるとか Ruby でできることはない、というかしないほうがいい。Linux で clang を入れればビルドはできるというものだけど、こういう状況で rvm と Travis のバイナリの組み合わせを使うのはなかなかのリスクなので使わないほうがいいと思います。
対象となるのは、irb とその依存である reline のみなんだけど、Ruby 3.4 の master バージョンだと Gemfile に irb が含まれていないときに bundle exec ruby -rirb -e ""
などと実行すると irb を Gemfile に追加しろ、というエラーに加えて reline も追加しろ、というエラーが出てしまう。
で、irb の gemspec にはちゃんと reline が追加されているわけで、この警告がでるというのは単なるバグなのでなんとかした。
https://github.com/ruby/ruby/commit/3146cbbbc423c6995936b53b639f65a4b91881db
irb と reline が決め打ちなのはダサいが、現状で対象となるものはこの2つだけなのでまあいいかな、ってことにした。とはいえ、ちゃんと調べてないだけで、他にもあるかもしれない。そのときは決め打ちじゃなくてちゃんとチェックするようにしようと思う。
金曜恒例の上野公園を散歩。まだまだ暑くてなかなかしんどい。
今日は東博で展示が始まった国宝の檜図屏風から。それにしても東博は海外からの観光客は増える一方で、平日だというのにだいぶ混雑していたなあ。
今の時期は黒田清輝の特別展示もやっていて、黒田記念館から智・感・情が出張展示されていた。割と期間も長いようなのでこの機会に見ておくといいかもしれない。
東博のあとは上野の森美術館へ。ここでは神山財団というところが美術家に支援をしているらしく、対象となる作家による展覧会が開催されていた。中で見かけた日本画の MOON というやつが一番好みだった。上野の森美術館は来週からしばらく改装のために閉館するらしい。
このあとは上野駅で軽く買い物をしてから帰宅。