💎
Ruby3.2.0をインストールするときは、libyamlも必要
MacにRuby3.2.0をインストールしようとしたら失敗した。
$ rbenv install 3.2.0
BUILD FAILED (macOS 13.0.1 using ruby-build 20221225-6-ge741c92)
...
*** Fix the problems, then remove these directories and try again if you want.
Generating RDoc documentation
/private/var/folders/zn/xxxxxx/T/ruby-build.xxxxxxxx/ruby-3.2.0/lib/yaml.rb:3: warning: It seems your ruby installation is missing psych (for YAML output).
To eliminate this warning, please install libyaml and reinstall your ruby.
uh-oh! RDoc had a problem:
cannot load such file -- psych
run with --debug for full backtrace
make: *** [rdoc] Error 1
Ruby3.2.0のリリースノートによるとlibyaml
やlibffi
の同梱が廃止されたとのこと。別途インストールする必要がある。
3rd パーティライブラリのソースコード同梱廃止
libyaml や libffi のような 3rd パーティのライブラリのソースコードの同梱を廃止しましたPsych に同梱していた libyaml のソースコードは削除されました。ユーザーは自身で Ubuntu や Debian プラットフォームなら libyaml-dev パッケージをインストールする必要があります。このパッケージ名称はプラットフォームごとに異なります。
Fiddle に同梱していた libffi のソースコードも削除されました
Homebrewを利用してlibyaml
をインストールした後に、Ruby3.2.0をインストール。
(Linuxの場合でも同様にyumやaptなどのパッケージマネージャでlibyamlなど足りてないパッケージをインストールすれば良い)
$ brew install libyaml
$ rbenv install 3.2.0
自分の環境では、libyaml
がインストールされていたが、Rubyのインストールに失敗した。
ruby-build
もインストールしなおすことで解決。
$ brew install libyaml ruby-build
Discussion