2016-04-24 2 views
4

При попытке запустить jekyll serve, кажется, что она построена правильно (хотя с предупреждениями, которые я не смог решить), но затем не может служить. jekyll build завершает работу, но в результирующих файлах отсутствует скомпилированный CSS.Jekyll не может служить (версия для библиотеки, несовместимая с Ruby)

Выход из jekyll serve:

Ignoring ffi-1.9.10 because its extensions are not built. Try: gem pristine ffi --version 1.9.10 
Ignoring curb-0.9.3 because its extensions are not built. Try: gem pristine curb --version 0.9.3 
Ignoring executable-hooks-1.3.2 because its extensions are not built. Try: gem pristine executable-hooks --version 1.3.2 
Ignoring ffi-1.9.10 because its extensions are not built. Try: gem pristine ffi --version 1.9.10 
Ignoring gem-wrappers-1.2.7 because its extensions are not built. Try: gem pristine gem-wrappers --version 1.2.7 
Ignoring json-1.8.2 because its extensions are not built. Try: gem pristine json --version 1.8.2 
Ignoring thin-1.6.1 because its extensions are not built. Try: gem pristine thin --version 1.6.1 
Configuration file: /home/jtebert/OwnCloud/Projects/Programming/python/AMS/mockup/_config.yml 
      Source: /home/jtebert/OwnCloud/Projects/Programming/python/AMS/mockup 
     Destination: /home/jtebert/OwnCloud/Projects/Programming/python/AMS/mockup/_site 
Incremental build: disabled. Enable with --incremental 
     Generating... 
        done in 1.404 seconds. 
/usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:120:in `require': incompatible library version - /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/ffi-1.9.10/lib/ffi_c.so (LoadError) 
     from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:120:in `require' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/ffi-1.9.10/lib/ffi.rb:6:in `rescue in <top (required)>' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/ffi-1.9.10/lib/ffi.rb:3:in `<top (required)>' 
     from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:120:in `require' 
     from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:120:in `require' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/rb-inotify-0.9.7/lib/rb-inotify/native.rb:1:in `<top (required)>' 
     from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:68:in `require' 
     from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:68:in `require' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/rb-inotify-0.9.7/lib/rb-inotify.rb:1:in `<top (required)>' 
     from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:68:in `require' 
     from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:68:in `require' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/listen-3.0.6/lib/listen/adapter/linux.rb:30:in `_configure' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/listen-3.0.6/lib/listen/adapter/base.rb:45:in `block in configure' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/listen-3.0.6/lib/listen/adapter/base.rb:40:in `each' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/listen-3.0.6/lib/listen/adapter/base.rb:40:in `configure' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/listen-3.0.6/lib/listen/adapter/base.rb:63:in `start' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/listen-3.0.6/lib/listen/backend.rb:26:in `start' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/listen-3.0.6/lib/listen/listener.rb:67:in `block in <class:Listener>' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/listen-3.0.6/lib/listen/fsm.rb:120:in `instance_eval' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/listen-3.0.6/lib/listen/fsm.rb:120:in `call' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/listen-3.0.6/lib/listen/fsm.rb:91:in `transition_with_callbacks!' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/listen-3.0.6/lib/listen/fsm.rb:57:in `transition' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/listen-3.0.6/lib/listen/listener.rb:90:in `start' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/jekyll-watch-1.3.1/lib/jekyll/watcher.rb:12:in `watch' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/jekyll-3.1.3/lib/jekyll/commands/build.rb:72:in `watch' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/jekyll-3.1.3/lib/jekyll/commands/build.rb:39:in `process' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/jekyll-3.1.3/lib/jekyll/commands/serve.rb:34:in `block (2 levels) in init_with_program' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/mercenary-0.3.5/lib/mercenary/command.rb:220:in `block in execute' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/mercenary-0.3.5/lib/mercenary/command.rb:220:in `each' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/mercenary-0.3.5/lib/mercenary/command.rb:220:in `execute' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/mercenary-0.3.5/lib/mercenary/program.rb:42:in `go' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/mercenary-0.3.5/lib/mercenary.rb:19:in `program' 
     from /home/jtebert/.rvm/gems/ruby-2.0.0-p643/gems/jekyll-3.1.3/bin/jekyll:13:in `<top (required)>' 
     from /usr/local/bin/jekyll:23:in `load' 
     from /usr/local/bin/jekyll:23:in `<main>' 

При попытке запустить проект Джекил, я должен создать ссылку версий Ruby, потому что он искал «Ruby2.1», но я не уверен, если это играет роль в текущей проблеме: ln -s /usr/bin/ruby '/usr/bin/ruby2.1'.

Согласно моему менеджеру пакетов, я установил Ruby 2.3.0. Но согласно which ruby, я использую 2.0.0, который он получает от rvm: /home/xxxxxxx/.rvm/rubies/ruby-2.0.0-p643/bin/ruby. И, как я уже упоминал ранее, Джекил, похоже, хочет что-то для v2.1. Я предполагаю, что эти конфликтующие версии каким-то образом вызывают проблему, но я не знаю, как ее разрешить.

+0

У меня такая же проблема, но у меня нет 'rvm'. Любые другие догадки? –

ответ

0

Проблема для меня, казалось, была rvm (что я не уверен, как я закончил использовать). Решение заключалось в том, чтобы удалить rvm с помощью rvm implode, а затем переустановить jekyll с помощью gem install jekyll. И предупреждения, и ошибки исчезли, и он работает правильно.

0

В моем случае мне пришлось установить ffi библиотеки с gem:

gem install ffi

Этой ошибка, вероятно, вызван старой версией библиотеки, установленной в системе. gem затем устанавливает правильную версию для вашего проекта.