Nuevo en Ruby y estoy teniendo problemas con LOAD_PATH

Recientemente instalé Ruby 2.0.0 en OS X 10.8.3 comstackndo desde el código fuente. Revisé la versión con

$ ruby --version ruby 2.0.0p195 (2013-05-14 revision 40734) [x86_64-darwin12.3.0] 

Y he comprobado mi versión de gem con

 $ gem env RubyGems Environment: - RUBYGEMS VERSION: 2.0.3 - RUBY VERSION: 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0] - INSTALLATION DIRECTORY: /Library/Ruby/Gems/1.8 - RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby - EXECUTABLE DIRECTORY: /usr/bin - RUBYGEMS PLATFORMS: - ruby - universal-darwin-12 - GEM PATHS: - /Library/Ruby/Gems/1.8 - /Users/ehartsuyker/.gem/ruby/1.8 - /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :backtrace => false - :bulk_threshold => 1000 - :benchmark => false - :sources => ["http://rubygems.org/", "http://gemcutter.org"] - REMOTE SOURCES: - http://rubygems.org/ - http://gemcutter.org 

Noté que la versión reportada de Ruby aquí no coincide con la versión que instalé. No sé si esto importa o no.

Tengo un simple código llamado encrypy.rb que estoy ejecutando. Después de instalar la gem ‘rsa’ con gem instalar rsa.

 require 'rubygems' require 'rsa' key = RSA::KeyPair.generate(128) ciphertext = key.encrypt("message") puts(ciphertext) 

Cuando lo ejecuto, da un error diciendo que no puede encontrar la gem.

 $ ruby encrypt.rb -Idirectory '/Library/Ruby/Gems/1.8' /usr/local/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require': cannot load such file -- rsa (LoadError) from /usr/local/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require' from encrypt.rb:2:in `' 

Entonces, la pregunta es, ¿por qué Ruby no encuentra la gem a pesar de que parece saber dónde está? ¿Y cómo puedo arreglarlo?

Ruby 1.8.7 se entrega con OS X. Parece que gem está viendo esa versión en lugar de tu versión 2.0.0 instalada manualmente. Como otros ya han sugerido, el uso de RVM o rbenv (que depende de las preferencias personales) hace que el manejo de diferentes entornos ruby ​​sea mucho más fácil. Puedes encontrar esas herramientas y descripciones para ellos en los siguientes lugares:

RVM: https://rvm.io/

rbenv: https://github.com/sstephenson/rbenv