zjffdu
zjffdu

Reputation: 28880

uninitialized constant Syck error when running jekyll

Using jekyll, I get the following error when run command bundle exec jekyll serve --watch,

bundler: failed to load command: jekyll (/home/admin/.rbenv/versions/2.3.8/bin/jekyll)
NameError: uninitialized constant Syck
  /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/safe_yaml-0.9.7/lib/safe_yaml/syck_node_monkeypatch.rb:42:in `<top (required)>'
  /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/safe_yaml-0.9.7/lib/safe_yaml.rb:200:in `require'
  /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/safe_yaml-0.9.7/lib/safe_yaml.rb:200:in `<module:YAML>'
  /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/safe_yaml-0.9.7/lib/safe_yaml.rb:132:in `<top (required)>'
  /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/jekyll-1.3.0/lib/jekyll.rb:21:in `require'
  /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/jekyll-1.3.0/lib/jekyll.rb:21:in `<top (required)>'
  /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/jekyll-1.3.0/bin/jekyll:7:in `require'
  /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/jekyll-1.3.0/bin/jekyll:7:in `<top (required)>'
  /home/admin/.rbenv/versions/2.3.8/bin/jekyll:22:in `load'
  /home/admin/.rbenv/versions/2.3.8/bin/jekyll:22:in `<top (required)>'
/home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/commander-4.1.6/lib/commander/runner.rb:385:in `block in require_program': program version required (Commander::Runner::CommandError)
    from /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/commander-4.1.6/lib/commander/runner.rb:384:in `each'
    from /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/commander-4.1.6/lib/commander/runner.rb:384:in `require_program'
    from /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/commander-4.1.6/lib/commander/runner.rb:52:in `run!'
    from /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/commander-4.1.6/lib/commander/delegates.rb:8:in `run!'
    from /home/admin/.rbenv/versions/2.3.8/lib/ruby/gems/2.3.0/gems/commander-4.1.6/lib/commander/import.rb:10:in `block in <top (required)>'

Upvotes: 0

Views: 401

Answers (2)

aaronkelton
aaronkelton

Reputation: 409

It looks like you're using Jekyll version 1.3.0, which is about 5 years old at this point. Syck was removed from Ruby 2.0.0, so I think you'll need to use a newer version of Jekyll or use the Syck gem to bridge the gap. https://github.com/ruby/syck

Upvotes: 0

David Jacquel
David Jacquel

Reputation: 52829

I guess that the few line relating to jekyll-1.3.0 tells us that there is a path problem somewhere.

  • To update your gems with bundle update

  • and do a rehash with rbenv rehash

Upvotes: 2

Related Questions