Environment:
- Rails 3.2.11
- Heroku bamboo-mri-1.9.2
- Using RVM
- ruby-1.9.2-p290
my .rvmrc is configured to use ruby-1.9.2-p290
我的.rvmrc配置为使用ruby-1.9.2-p290
When running the bundle install
command, I am getting this:
运行bundle install命令时,我得到了这个:
/Users/joel/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': dlopen(/Users/joel/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/x86_64-darwin11.4.2/digest/sha1.bundle, 9): Library not loaded: /opt/local/lib/libcrypto.1.0.0.dylib (LoadError)
Referenced from: /Users/joel/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/x86_64-darwin11.4.2/digest/sha1.bundle
Reason: image not found - /Users/joel/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/x86_64-darwin11.4.2/digest/sha1.bundle
from /Users/joel/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.3.5/lib/bundler/definition.rb:1:in `<top (required)>'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.3.5/lib/bundler.rb:148:in `definition'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.3.5/lib/bundler/cli.rb:245:in `install'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.3.5/lib/bundler/vendor/thor/task.rb:27:in `run'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.3.5/lib/bundler/vendor/thor/invocation.rb:120:in `invoke_task'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.3.5/lib/bundler/vendor/thor.rb:344:in `dispatch'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.3.5/lib/bundler/vendor/thor/base.rb:434:in `start'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.3.5/bin/bundle:20:in `block in <top (required)>'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.3.5/lib/bundler/friendly_errors.rb:3:in `with_friendly_errors'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/gems/bundler-1.3.5/bin/bundle:20:in `<top (required)>'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/bin/bundle:19:in `load'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/bin/bundle:19:in `<main>'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/bin/ruby_noexec_wrapper:14:in `eval'
from /Users/joel/.rvm/gems/ruby-1.9.2-p290@global/bin/ruby_noexec_wrapper:14:in `<main>'
Any ideas on how to resolve this?
关于如何解决这个问题的任何想法?
TRY 1
rvm pkg install openssl
rvm reinstall all --force
then cd .. and cd project_folder
然后cd ..和cd project_folder
bundle install
All gem install again properly
所有宝石再次正确安装
the first error is gone BUT when I move into another project using ruby 1.9.3, I get a 'new' error, so it seems like I won't be able to use at the same time 1.9.2 and 1.9.3 ... or I'll have to reinstall my gems everytime ??? I must missing something.
第一个错误消失但是当我使用ruby 1.9.3进入另一个项目时,我得到一个“新”错误,所以我似乎无法同时使用1.9.2和1.9.3。 ..或者我每次都要重新安装我的宝石???我必须遗漏一些东西。
here the new error:
这里出现了新的错误:
/Users/joel/.rvm/rubies/ruby-1.9.3-p429/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': dlopen(/Users/joel/.rvm/rubies/ruby-1.9.3-p429/lib/ruby/1.9.1/x86_64-darwin11.4.2/digest/sha1.bundle, 9): Symbol not found: _rb_Digest_SHA1_Finish (LoadError)
Referenced from: /Users/joel/.rvm/rubies/ruby-1.9.3-p429/lib/ruby/1.9.1/x86_64-darwin11.4.2/digest/sha1.bundle
Expected in: flat namespace
in /Users/joel/.rvm/rubies/ruby-1.9.3-p429/lib/ruby/1.9.1/x86_64-darwin11.4.2/digest/sha1.bundle - /Users/joel/.rvm/rubies/ruby-1.9.3-p429/lib/ruby/1.9.1/x86_64-darwin11.4.2/digest/sha1.bundle
from /Users/joel/.rvm/rubies/ruby-1.9.3-p429/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@global/gems/bundler-1.3.5/lib/bundler/definition.rb:1:in `<top (required)>'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@global/gems/bundler-1.3.5/lib/bundler.rb:148:in `definition'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@global/gems/bundler-1.3.5/lib/bundler/cli.rb:301:in `update'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@global/gems/bundler-1.3.5/lib/bundler/vendor/thor/task.rb:27:in `run'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@global/gems/bundler-1.3.5/lib/bundler/vendor/thor/invocation.rb:120:in `invoke_task'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@global/gems/bundler-1.3.5/lib/bundler/vendor/thor.rb:344:in `dispatch'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@global/gems/bundler-1.3.5/lib/bundler/vendor/thor/base.rb:434:in `start'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@global/gems/bundler-1.3.5/bin/bundle:20:in `block in <top (required)>'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@global/gems/bundler-1.3.5/lib/bundler/friendly_errors.rb:3:in `with_friendly_errors'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@global/gems/bundler-1.3.5/bin/bundle:20:in `<top (required)>'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@global/bin/bundle:19:in `load'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@global/bin/bundle:19:in `<main>'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@creativebank/bin/ruby_noexec_wrapper:14:in `eval'
from /Users/joel/.rvm/gems/ruby-1.9.3-p429@creativebank/bin/ruby_noexec_wrapper:14:in `<main>'
1 个解决方案
#1
3
Since you mentioned you recently moved from MacPorts to Homebrew, I'd say it's likely that you had some gems that were compiled against a MacPorts-installed library (in /opt/local
) that doesn't exist anymore. You should recompile those gems to link against the Homebrew-supplied versions of those libraries (or the Apple ones, if they exist). You can recompile a gem with native components simply be re-installing it.
既然你提到你最近从MacPorts转移到Homebrew,我会说你可能有一些宝石是针对MacPorts安装的库(在/ opt / local)编译的,不再存在。您应该重新编译这些宝石以链接这些库的Homebrew提供的版本(或者如果它们存在的Apple库)。您可以使用本机组件重新编译gem只需重新安装它。
#1
3
Since you mentioned you recently moved from MacPorts to Homebrew, I'd say it's likely that you had some gems that were compiled against a MacPorts-installed library (in /opt/local
) that doesn't exist anymore. You should recompile those gems to link against the Homebrew-supplied versions of those libraries (or the Apple ones, if they exist). You can recompile a gem with native components simply be re-installing it.
既然你提到你最近从MacPorts转移到Homebrew,我会说你可能有一些宝石是针对MacPorts安装的库(在/ opt / local)编译的,不再存在。您应该重新编译这些宝石以链接这些库的Homebrew提供的版本(或者如果它们存在的Apple库)。您可以使用本机组件重新编译gem只需重新安装它。