サイトアイコン Lonely Mobiler

Rails で bundle install 時に psych でエラーが発生する問題の対処方法

久しぶりに Rails アプリを作成しようとしたところ、bundle install した際に以下のようなエラーが発生した。

環境は WSL2 + Ubuntu 22.04 + Ruby 3.2.2 + Rails 7.2.1

$ bundle install

An error occurred while installing psych (5.1.2), and Bundler cannot continue.

In Gemfile: debug was resolved to 1.9.2, which depends on irb was resolved to 1.14.0, which depends on rdoc was resolved to 6.7.0, which depends on psych

調べてみると Ruby 3.2 での変更で、3rd パーティライブラリのソースコード同梱が廃止された影響により、 psych を利用するのに必要な libyaml を自分でインストールしないといけなくなったようだ。

Psych に同梱していた libyaml のソースコードは削除されました。ユーザーは自身で Ubuntu や Debian プラットフォームなら libyaml-dev パッケージをインストールする必要があります。このパッケージ名称はプラットフォームごとに異なります。

Ruby 3.2.0 リリース

今回は Ubuntu なので apt install コマンドで libyaml-dev をインストールすることにした。

$ sudo apt install libyaml-dev

その後 bundle install を実行すると正常にインストールが完了した。

$ bundle install Bundle complete! 16 Gemfile dependencies, 98 gems now installed. Use `bundle info [gemname]` to see where a bundled gem is installed.

参考にしたページ、感謝。
bundle install の際 psychのインストールに失敗する | RYOZEN Scratch Creations

Sponsored Link
モバイルバージョンを終了