简体   繁体   中英

Error while running bundle install and rails server command

Whenever I try to run the above mention command it shows the following error.

This is the first step when i try to run the simple bundle command: Bundle install

/home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/digest.rb:16:in `const_missing': library not found for class Digest::MD5 -- digest/md5 (LoadError)
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/source/rubygems/remote.rb:26:in `cache_slug'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/fetcher/compact_index.rb:107:in `cache_path'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/fetcher/compact_index.rb:83:in `compact_index_client'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/cli.rb:646:in `warn_on_outdated_bundler'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/cli.rb:24:in `block in dispatch'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/vendor/thor/lib/thor.rb:366:in `dispatch'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/cli.rb:22:in `dispatch'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/vendor/thor/lib/thor/base.rb:444:in `start'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/cli.rb:13:in `start'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/exe/bundle:30:in `block in <top (required)>'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/friendly_errors.rb:121:in `with_friendly_errors'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/exe/bundle:22:in `<top (required)>'
from /home/mifi/.rbenv/versions/2.4.0/bin/bundle:22:in `load'
from /home/mifi/.rbenv/versions/2.4.0/bin/bundle:22:in `<main>'

And when i found the above error i try to run the server command for the rails but it doesn't work out for me.

rails server

/home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require': libcrypto.so.1.0.2: cannot open shared object file: No such file or directory - /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/x86_64-linux/digest/sha1.so (LoadError)
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/source/git.rb:4:in `<top (required)>'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/lockfile_parser.rb:122:in `<class:LockfileParser>'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/lockfile_parser.rb:14:in `<module:Bundler>'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/lockfile_parser.rb:13:in `<top (required)>'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/definition.rb:2:in `<top (required)>'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler.rb:129:in `definition'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler.rb:95:in `setup'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/bundler-1.15.3/lib/bundler/setup.rb:9:in `<top (required)>'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /home/mifi/huginn/config/boot.rb:6:in `<top (required)>'
from bin/rails:8:in `require_relative'
from bin/rails:8:in `<main>'

and same for the rails -v command:

/home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:120:in `require': libcrypto.so.1.0.2: cannot open shared object file: No such file or directory - /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/x86_64-linux/digest/md5.so (LoadError)
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:120:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/generators/app_base.rb:2:in `<top (required)>'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/generators/rails/app/app_generator.rb:1:in `<top (required)>'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/commands/application/application_command.rb:2:in `<top (required)>'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/command/behavior.rb:82:in `block (2 levels) in lookup'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/command/behavior.rb:78:in `each'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/command/behavior.rb:78:in `block in lookup'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/command/behavior.rb:77:in `each'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/command/behavior.rb:77:in `lookup'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/command.rb:68:in `find_by_namespace'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/command.rb:42:in `invoke'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.1.2/lib/rails/cli.rb:16:in `<top (required)>'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
from /home/mifi/.rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.1.2/exe/rails:9:in `<top (required)>'
from /home/mifi/.rbenv/versions/2.4.0/bin/rails:22:in `load'
from /home/mifi/.rbenv/versions/2.4.0/bin/rails:22:in `<main>'

Is there anything I am missing out.

I got this same error, and it seems like that version of ruby got corrupted.

> bundle install
~/.rbenv/versions/2.5.6/lib/ruby/2.5.0/digest.rb:16:in `const_missing':
library not found for class Digest::SHA1 -- digest/sha1 (LoadError)

> ruby -r digest/sha1 -e 'p Digest::MD5'
...
Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib (LoadError)
...

Using a mac with rbenv, I fixed it as follows:

> ruby -v
ruby 2.5.6p201 (2019-08-28 revision 67796) [x86_64-darwin18]

> rbenv install 2.5.6
...
continue with installation? (y/N) y
...
Installed ruby-2.5.6 to ~/.rbenv/versions/2.5.6

> ruby -r digest/sha1 -e 'p Digest::MD5'
Digest::MD5

bundle install worked after that.

Note: I got a lot of messages about running gem pristine, so just in case, I also ran:

> gem pristine --all

One of your underlying libraries is not installed. Run

sudo apt-get install libssl-dev libssl

Assuming you are on ubuntu linux.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM