概要
FreeBSD では Ruby 3.0.0 がビルドできない?
プラットフォームが FreeBSD のときは DTrace を既定で無効にする
Ruby 3.0.0 リリースの直前に FreeBSD 12.2-RELEASE では DTrace を無効にしないとバイナリが生成できないという情報に気づき、インストール時に `--disable-dtrace` を必ずつけなくてもよいように既定を無効にした変更をしました。取り込み済みでリリースされています。 https://t.co/kgJwwfV3SW
— カールおじ (@takano32) December 25, 2020
GitHub.com での主張がデカい
Ruby に駆け込みというのもおこがましさのあるギリギリさで FreeBSD の対応をコミットしたら、タイミングがまさにタグ打ちの直前で、 https://t.co/IXkjVfF339 のタグをみると目立つ位置になんか表示されとる!!! https://t.co/UyKphYO43Q pic.twitter.com/xqZUGy6kqx
— カールおじ (@takano32) December 25, 2020
なんか少し笑ってしまった。
これじゃあ、このページを見たひとは Ruby 3.0.0 は @takano32 ってヤツがリリースしたんだってよ。みたいな様子に見えなくもないじゃないか…主張がデカい!!!成瀬さん、リリースありがとうございます。
Ruby 3.0.0 についての所感
Ruby 3.0.0 ではだいぶ Erlang に近い特徴が増えたと感じる。Ractor というアクターモデルが導入されたということは言うまでもないが、find パターンの追加はより Erlang っぽいコードを書く手助けになりそう。具体的にはバイナリのパターンマッチでパーサが書けそう。 https://t.co/uSIzS61LrT
— カールおじ (@takano32) December 25, 2020
最後に
FreeBSD ではこの記事で扱った変更を取り入れる前までは Ruby 3.0.0 をインストールするときに下記のようなオプションが必要な状態でリリースに向く形でした。
CONFIGURE_OPTS='--disable-dtrace' rbenv install 3.0.0
この記事で紹介させていただいた変更によって以下のコマンドで入るようになりました。手元でも動作を確認済みです。
rbenv install 3.0.0
FreeBSD で Ruby 3.0.0 をビルドするという特殊な状況に向けての修正ですが、少ない変更の割には多くの方の時間を節約することができそうな修正になったのではないかと思います。
詳しく調べてみると LLVM がデグって DTrace のオブジェクトをリンクできなくなっているようなので、新しい LLVM がパッケージで降りてきたら、これをリバートするような変更を忘れないようにしたいと思います。
では、みなさんもよい Ruby 3.0.0 ライフを。
メリークリスマス!!!
0 件のコメント:
コメントを投稿