ソフトウェア・アップデートしたらrails newがエラーになった話

ソフトウェア・アップデートしたらrails newがエラーになった話

August 15, 2020

ちょっとしたメモです。事象発生からエラー解消までの記録。

何もやっていないのに、突然 rails new がエラーに #

昨日までは何の不都合もなく実行できていた rails new が、なぜか今日は突然エラーに。昨日から何も変わったことはやっていないのになぜ?…と思いましたが、当然そんなことはなく。

思い返せば、昨日の終わりに mac のソフトウェア・アップデートの通知が出たので、仰せのままに実施していました。他に変わったことは(今度こそ)何もやっていないため、間違いなく原因はこれだと特定。

ということで、エラー解決の方法が見つかるかと思い「mac ソフトウェア・アップデート rails エラー」などといったワードでネット検索しましたがあまり見つからず。

発生しているエラーから原因を調べてみる #

rails new を実行した結果を見てみると、下記でエラーになっていました。

.........
......
...
Fetching puma 4.3.5
Installing puma 4.3.5 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

rails new で色々とインストールしていますが、puma をインストールする部分でエラーになっています。さらに下の方までメッセージを追うと、次の記載も見つかりました。(一部抜粋です)

warnings generated.
compiling puma_http11.c

An error occurred while installing puma (4.3.5), and Bundler cannot continue.

やはり puma のインストール中にエラーとなっているようです。エラーとなる前に、コンパイルのところでワーニングが上がっています。

上記のエラーメッセージなどで再びネット検索。

すると、コンパイルが必要な gem のインストールで失敗している場合は、Xcode Command Line Tools のバージョンが原因である可能性があるというものを発見。

Xcode Command Line Tools の再インストール #

ということで次の通り再インストールします。

1.アンインストール(削除)

sudo rm -r /Library/Developer/CommandLineTools

2.インストール

xcode-select --install

コマンド実行後、インストールしますか?というポップアップが表示されるので実行。

結果 #

その後、直っててくれと思いながら再び rails new してみると上手くいきました!(これでダメだったら手詰まりでしたので本当助かった…)

Xcode Command Line Tools なんて Homebrew と一緒にインストールされて以来触った記憶もないので、やはり原因は mac のソフトウェア・アップデートだったんじゃないでしょうか?

何はともあれ解消して良かったです。