0

I have been through the following links and have tried but didn't get any help:-
Cannot load Ruby EventMachine in Rails console - no such file to load
Using Live Reload with Jekyll
Unable to load the EventMachine C extension; To use the pure-ruby reactor

From the 2nd question mentioned above, I understand that --livereload comes with jekyll v3.7+.
My machine has the following:

Pkg / Cmd       Versions
---------       -------------------------------------------------------------
npm    -v       6.14.13
ruby   -v       ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x64-mingw32]
gem    -v       3.2.22
jekyll -v       jekyll 4.2.0
bundle -v       Bundler version 2.2.23

Now when I execute bundle exec jekyll serve or jekyll serve, I get the following output:-

PS C:\Users\Vedant\source\repos\Mine\phougatv.github.io> jekyll serve
Configuration file: C:/Users/blah/blah/phougatv.github.io/_config.yml
            Source: C:/Users/blah/blah/phougatv.github.io
       Destination: C:/Users/blah/blah/phougatv.github.io/_site
 Incremental build: disabled. Enable with --incremental
      Generating...
       Jekyll Feed: Generating feed for posts
                    done in 0.859 seconds.
 Auto-regeneration: enabled for 'C:/Users/blah/blah/phougatv.github.io'
    Server address: http://127.0.0.1:4000/
  Server running... press ctrl-c to stop.

And when I execute bundle exec jekyll serve --livereload or jekyll serve --livereload, I get:

PS C:\Users\Vedant\source\repos\Mine\phougatv.github.io> jekyll serve --livereload
Configuration file: C:/Users/blah/blah/phougatv.github.io/_config.yml
            Source: C:/Users/blah/blah/phougatv.github.io
       Destination: C:/Users/blah/blah/phougatv.github.io/_site
 Incremental build: disabled. Enable with --incremental
      Generating...
       Jekyll Feed: Generating feed for posts
                    done in 0.701 seconds.
 Auto-regeneration: enabled for 'C:/Users/blah/blah/phougatv.github.io'
                    ------------------------------------------------
      Jekyll 4.2.0   Please append `--trace` to the `serve` command
                     for any additional information or backtrace.
                    ------------------------------------------------
C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/eventmachine-1.2.7-x64-mingw32/lib/eventmachine.rb:41:in `require': cannot load such file -- sorted_set (LoadError)
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/eventmachine-1.2.7-x64-mingw32/lib/eventmachine.rb:41:in `<top (required)>'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/em-websocket-0.5.2/lib/em-websocket.rb:3:in `require'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/em-websocket-0.5.2/lib/em-websocket.rb:3:in `<top (required)>'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/lib/jekyll/commands/serve/live_reload_reactor.rb:3:in `require'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/lib/jekyll/commands/serve/live_reload_reactor.rb:3:in `<top (required)>'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/lib/jekyll/commands/serve.rb:143:in `require_relative'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/lib/jekyll/commands/serve.rb:143:in `register_reload_hooks'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/lib/jekyll/commands/serve.rb:98:in `process'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/lib/jekyll/command.rb:91:in `block in process_with_graceful_fail'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/lib/jekyll/command.rb:91:in `each'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/lib/jekyll/command.rb:91:in `process_with_graceful_fail'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/lib/jekyll/commands/serve.rb:86:in `block (2 levels) in init_with_program'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `block in execute'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `each'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary/command.rb:221:in `execute'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary/program.rb:44:in `go'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/mercenary-0.4.0/lib/mercenary.rb:21:in `program'
        from C:/Ruby30-x64/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/exe/jekyll:15:in `<top (required)>'
        from C:/Ruby30-x64/bin/jekyll:23:in `load'
        from C:/Ruby30-x64/bin/jekyll:23:in `<main>'

After getting the above-mentioned error I followed Answer-1 & Answer-2, and added gem "eventmachine" to the Gemfile but they didn't seems to solve my problem. One of these answers gave the error: 'require': cannot load such file -- sorted_set (LoadError), to resolve this I did gem install sorted_set(SortedSet has been removed), but then other error message was displayed. After trying all these answer, I think I am nowhere near to the correct approach.

Question: How do I execute: bundle exec jekyll serve --livereload or jekyll serve --livereload successfully?

phougatv
  • 881
  • 2
  • 12
  • 29

1 Answers1

0

Had the same problem, used this answer which was in one of the posts you linked which solved the problem for me at least. You may have already tried it, though.

Resdek
  • 1