[Rails7] Guard LiveReload セットアップ時のエラー対処法 (Unable to load the EventMachine C extension)

Web製作

たまにRailsを使う程度の技術知識によるトラブルシュートナレッジ・備忘録です。Rails界隈の最新トレンドへ必ずしも追従しているものではありませんので注意してください。

Railsで開発中にコードの変更があったタイミングでブラウザを描画し直してくれるライブラリ LiveReload をセットアップしようとしたときに以下のエラーが発生しました。

 bundle exec guard init livereload
Unable to load the EventMachine C extension; To use the pure-ruby reactor, require 'em/pure_ruby'
00:37:41 - ERROR - Could not load 'guard/livereload' or '~/.guard/templates/livereload' or find class Guard::Livereload
> [#]

bundle install までは正常に実行に実行できたうえで、コンフィグ生成のタイミングです。

一応解決できたので解決策を記録します。

環境

  • M1 Mac
  • ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [arm64-darwin21]
  • Rails 7.0.2.4

Unable to load the EventMachine C extension; To use the pure-ruby reactor, require ‘em/pure_ruby’ の解決策

Gemfile に指定する eventmachine を GitHub の最新ブランチを取得するようにします。

gem "eventmachine", git: "https://github.com/eventmachine/eventmachine.git", branch: "master"

2022/05/09実行時点は以下の通りになりました。

Using eventmachine 1.3.0.dev.1 (was 1.2.7) from https://github.com/eventmachine/eventmachine.git (at master@df4ab00)

Gemfile.lock

GIT
  remote: https://github.com/eventmachine/eventmachine.git
  revision: df4ab0068e5e9f504096584093a74510d0dac6c8
  branch: master
  specs:
    eventmachine (1.3.0.dev.1)

発生した理由

レポジトリのブランチには更新が入っていますが、Gemの方では2018年5月のリリース (v1.2.7) を最後にしているため、修正されたコードがリリースされていないようですね。

なお今回、Branch で Master を指定していますが、明確な変化点がどこであるかまでは確認していません。Production環境への適用においてはバージョン違いに注意してください。

… any of the other recent contributors able to shed any light on the situation here? There have been a lot of commits to the main branch but no gem release since 2018.

Related Books

この記事のテーマをもっと学びたい方へ

入門者向け

プロを目指す人のためのRuby入門[改訂2版]
プロを目指す人のためのR
プロを目指す人のためのRuby入門[改訂2版] 伊藤淳一 テスト駆動開発・デバッグ技法まで実務を意識した構成。通称チェリー本 Qiita/Zenn/noteで最も推薦頻度が高いRuby入門書。著者は日本Ruby界で最も信頼されるテクニカルライターの一人

中級〜上級者向け

パーフェクト Ruby on Rails【増補改訂版】
パーフェクト Ruby
パーフェクト Ruby on Rails【増補改訂版】 すがわらまさのり, 前島真一, 橋立友宏, 五十嵐邦明, 後藤優一 Active Job/Storage/Cable等の実践機能、テスト設計、Docker導入まで網羅 「日本語のRails解説書の最高峰」との評価。Alfista NAO Blog Rails本ランキング1位

Related Posts