Reputation: 53
I have installed Jekyll on MacOS Big Sur (11.2.3), but keep getting library not loaded message when running jekyll
.
<internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require': dlopen(/Users/tintin/.gem/ruby/3.0.0/gems/ffi-1.15.0/lib/ffi_c.bundle, 9): Library not loaded: /usr/local/opt/ruby/lib/libruby.3.0.dylib (LoadError)
Referenced from: /Users/tintin/.gem/ruby/3.0.0/gems/ffi-1.15.0/lib/ffi_c.bundle
Reason: image not found - /Users/tintin/.gem/ruby/3.0.0/gems/ffi-1.15.0/lib/ffi_c.bundle
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /Users/tintin/.gem/ruby/3.0.0/gems/ffi-1.15.0/lib/ffi.rb:6:in `rescue in <top (required)>'
from /Users/tintin/.gem/ruby/3.0.0/gems/ffi-1.15.0/lib/ffi.rb:3:in `<top (required)>'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /Users/tintin/.gem/ruby/3.0.0/gems/sassc-2.4.0/lib/sassc/native.rb:3:in `<top (required)>'
from /Users/tintin/.gem/ruby/3.0.0/gems/sassc-2.4.0/lib/sassc.rb:31:in `require_relative'
from /Users/tintin/.gem/ruby/3.0.0/gems/sassc-2.4.0/lib/sassc.rb:31:in `<top (required)>'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /Users/tintin/.gem/ruby/3.0.0/gems/jekyll-sass-converter-2.1.0/lib/jekyll/converters/scss.rb:3:in `<top (required)>'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /Users/tintin/.gem/ruby/3.0.0/gems/jekyll-sass-converter-2.1.0/lib/jekyll-sass-converter.rb:4:in `<top (required)>'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /Users/tintin/.rbenv/versions/3.0.0/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/lib/jekyll.rb:195:in `<top (required)>'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /Users/tintin/.rbenv/versions/3.0.0/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/exe/jekyll:8:in `<top (required)>'
from /Users/tintin/.rbenv/versions/3.0.0/bin/jekyll:23:in `load'
from /Users/tintin/.rbenv/versions/3.0.0/bin/jekyll:23:in `<main>'
<internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require': cannot load such file -- 3.0/ffi_c (LoadError)
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /Users/tintin/.gem/ruby/3.0.0/gems/ffi-1.15.0/lib/ffi.rb:4:in `<top (required)>'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /Users/tintin/.gem/ruby/3.0.0/gems/sassc-2.4.0/lib/sassc/native.rb:3:in `<top (required)>'
from /Users/tintin/.gem/ruby/3.0.0/gems/sassc-2.4.0/lib/sassc.rb:31:in `require_relative'
from /Users/tintin/.gem/ruby/3.0.0/gems/sassc-2.4.0/lib/sassc.rb:31:in `<top (required)>'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /Users/tintin/.gem/ruby/3.0.0/gems/jekyll-sass-converter-2.1.0/lib/jekyll/converters/scss.rb:3:in `<top (required)>'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /Users/tintin/.gem/ruby/3.0.0/gems/jekyll-sass-converter-2.1.0/lib/jekyll-sass-converter.rb:4:in `<top (required)>'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /Users/tintin/.rbenv/versions/3.0.0/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/lib/jekyll.rb:195:in `<top (required)>'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from <internal:/Users/tintin/.rbenv/versions/3.0.0/lib/ruby/site_ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /Users/tintin/.rbenv/versions/3.0.0/lib/ruby/gems/3.0.0/gems/jekyll-4.2.0/exe/jekyll:8:in `<top (required)>'
from /Users/tintin/.rbenv/versions/3.0.0/bin/jekyll:23:in `load'
from /Users/tintin/.rbenv/versions/3.0.0/bin/jekyll:23:in `<main>'
I've reinstalled jekyll, ruby and ffi using Homebrew and now use rbenv
.
My current setup is gem env
:
RubyGems Environment:
- RUBYGEMS VERSION: 3.2.16
- RUBY VERSION: 3.0.0 (2020-12-25 patchlevel 0) [x86_64-darwin20]
- INSTALLATION DIRECTORY: /Users/tintin/.rbenv/versions/3.0.0/lib/ruby/gems/3.0.0
- USER INSTALLATION DIRECTORY: /Users/tintin/.gem/ruby/3.0.0
- RUBY EXECUTABLE: /Users/tintin/.rbenv/versions/3.0.0/bin/ruby
- GIT EXECUTABLE: /usr/bin/git
- EXECUTABLE DIRECTORY: /Users/tintin/.rbenv/versions/3.0.0/bin
- SPEC CACHE DIRECTORY: /Users/tintin/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /Users/tintin/.rbenv/versions/3.0.0/etc
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-20
- GEM PATHS:
- /Users/tintin/.rbenv/versions/3.0.0/lib/ruby/gems/3.0.0
- /Users/tintin/.gem/ruby/3.0.0
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /Users/tintin/.rbenv/versions/3.0.0/bin
- /usr/local/Cellar/rbenv/1.1.2/libexec
- /Users/tintin/.gem/ruby/3.0.0/bin
- /Users/tintin/.rbenv/shims
- /Users/tintin/Applications/miniconda/bin
- /Users/tintin/Applications/miniconda/condabin
- /Users/tintin/Applications/miniconda/bin
- /Users/tintin/bin
- /usr/local/bin
- /usr/local/sbin
- @HOME/Library/Python/3.7/bin
- /usr/local/bin
- /usr/bin
- /bin
- /usr/sbin
- /sbin
- /Library/TeX/texbin
- /opt/X11/bin
This is what I have at the end of .zshrc
:
eval "$(rbenv init -)"
#export PATH="/usr/local/opt/ruby/bin:/usr/local/lib/ruby/gems/3.0.0/bin:$PATH"
#export PATH="$HOME/.gem/ruby/3.0.0/bin:$PATH"
# homebrew required vars
export LDFLAGS="-L/usr/local/opt/libffi/lib"
export PKG_CONFIG_PATH="/usr/local/opt/libffi/lib/pkgconfig"
export PATH="$HOME/.gem/ruby/3.0.0/bin:$PATH"
I would appreciate any help. I've spent one full day trying to solve the issue.
Upvotes: 2
Views: 4478
Reputation: 53
Solved the issue. Apparently, Jekyll mixes up two ruby installations or is installed in a different gem folder. I first added GEM_PATH
to .zshrc
:
export GEM_PATH="/Users/gizatm/.rbenv/versions/3.0.0/lib/ruby/gems/3.0.0"
Then I installed Jekyll again:
gem install jekyll
Upvotes: 2