Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can't install gems because "undefined method `invoke_with_build_args' for nil:NilClass"

Tags:

I'm on the Ruby track and I'm in the installation process of Ruby on Rails.

I'm trying to install gems but it's not happening and i'm not sure why and how to fix it.

$gem install bundler  ERROR:  Loading command: install (LoadError) dlopen(/Users/nthulanemakgato/.rbenv/versions/2.1.1/lib/ruby/2.1.0/x86_64-    darwin13.0/openssl.bundle, 9): Library not loaded:     /usr/local/opt/openssl/lib/libssl.1.0.0.dylib   Referenced from: /Users/nthulanemakgato/.rbenv/versions/2.1.1/lib/ruby/2.1.0/x86_64-    darwin13.0/openssl.bundle   Reason: image not found -     /Users/nthulanemakgato/.rbenv/versions/2.1.1/lib/ruby/2.1.0/x86_64-darwin13.0/openssl.bundle ERROR:  While executing gem ... (NoMethodError) undefined method `invoke_with_build_args' for nil:NilClass 

Here is one of the solutions that i've tried:

$CONFIGURE_OPTS="--with-openssl-dir=brew --prefix openssl" rbenv install 2.1.1  rbenv: /Users/nthulanemakgato/.rbenv/versions/2.1.1 already exists continue with installation? (y/N) y Downloading yaml-0.1.6.tar.gz... -> http://dqw8nmjcqpjn7.cloudfront.net/5fe00cda18ca5daeb43762b80c38e06e Installing yaml-0.1.6...  BUILD FAILED  Inspect or clean up the working tree at     /var/folders/tj/_bd6whds6lb7wtn2m8ylwx7h0000gp/T/ruby-build.20140429120202.53716 Results logged to /var/folders/tj/_bd6whds6lb7wtn2m8ylwx7h0000gp/T/ruby-    build.20140429120202.53716.log  Last 10 log lines: x yaml-0.1.6/win32/vc6/test_reader.dsp x yaml-0.1.6/win32/vc6/run_loader.dsp x yaml-0.1.6/win32/vc6/run_parser.dsp x yaml-0.1.6/win32/vc6/example_reformatter_alt.dsp x yaml-0.1.6/win32/vc6/example_deconstructor.dsp x yaml-0.1.6/win32/vc6/libyaml.dsw x yaml-0.1.6/win32/vc6/yaml.dsp /var/folders/tj/_bd6whds6lb7wtn2m8ylwx7h0000gp/T/ruby-build.20140429120202.53716/yaml-  0.1.6 /var/folders/tj/_bd6whds6lb7wtn2m8ylwx7h0000gp/T/ruby-build.20140429120202.53716 ~ configure: WARNING: unrecognized options: --with-openssl-dir configure: error: expected an absolute directory name for --prefix: openssl  BUILD FAILED  Inspect or clean up the working tree at     /var/folders/tj/_bd6whds6lb7wtn2m8ylwx7h0000gp/T/ruby-build.20140429120202.53716 Results logged to /var/folders/tj/_bd6whds6lb7wtn2m8ylwx7h0000gp/T/ruby-  build.20140429120202.53716.log  Last 10 log lines: x yaml-0.1.6/win32/vc6/run_loader.dsp x yaml-0.1.6/win32/vc6/run_parser.dsp x yaml-0.1.6/win32/vc6/example_reformatter_alt.dsp x yaml-0.1.6/win32/vc6/example_deconstructor.dsp x yaml-0.1.6/win32/vc6/libyaml.dsw x yaml-0.1.6/win32/vc6/yaml.dsp /var/folders/tj/_bd6whds6lb7wtn2m8ylwx7h0000gp/T/ruby-build.20140429120202.53716/yaml-        0.1.6 /var/folders/tj/_bd6whds6lb7wtn2m8ylwx7h0000gp/T/ruby-build.20140429120202.53716 ~ configure: WARNING: unrecognized options: --with-openssl-dir configure: error: expected an absolute directory name for --prefix: openssl make: *** No targets specified and no makefile found.  Stop. 

I have openssl-1.0.1g installed

I'm using Mac 10.9.2
ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin13.0]
rbenv 0.4.0-97-gfe0b243

This is not like other questions in that i'm using rbenv whereas others ask rvm related questions which I can't use.

Thanks in advance.

like image 446
Coolkid Avatar asked Apr 28 '14 20:04

Coolkid


Video Answer


2 Answers

I found that although I already had openSSL installed I needed to brew upgrade ruby before it was recognized. Another maze of twisty little passages, all alike.

like image 143
holdenweb Avatar answered Sep 27 '22 01:09

holdenweb


It looks like you need to install OpenSSL first. So try to install it:

$ brew install openssl

And then you need to recompile ruby with OpenSSL:

$ CONFIGURE_OPTS="--with-openssl-dir=brew --prefix openssl" rbenv install 2.1.1-p76

like image 29
iSunRise Avatar answered Sep 25 '22 01:09

iSunRise