rvm + rails install ERROR: While executing gem (NoMethodError)undefined method `ord' for nil:NilClass

匿名 (未验证) 提交于 2019-12-03 02:38:01

问题:

  • Ububtu 14.04
  • rvm 1.26.11
  • ruby 2.1.0p0

rvm list :

rvm rubies  =* ruby-2.1.0 [ x86_64 ]  # => - current # =* - current && default #  * - default

which ruby : /home/awlad/.rvm/rubies/ruby-2.1.0/bin/ruby

which rvm : /home/awlad/.rvm/bin/rvm

which bundle: /usr/bin/bundle

 RubyGems Environment:   - RUBYGEMS VERSION: 2.4.8   - RUBY VERSION: 2.1.0 (2013-12-25 patchlevel 0) [x86_64-linux]   - INSTALLATION DIRECTORY: /home/awlad/.rvm/gems/ruby-2.1.0   - RUBY EXECUTABLE: /home/awlad/.rvm/rubies/ruby-2.1.0/bin/ruby   - EXECUTABLE DIRECTORY: /home/awlad/.rvm/gems/ruby-2.1.0/bin   - SPEC CACHE DIRECTORY: /home/awlad/.gem/specs   - SYSTEM CONFIGURATION DIRECTORY: /home/awlad/.rvm/rubies/ruby-2.1.0/etc   - RUBYGEMS PLATFORMS:     - ruby     - x86_64-linux   - GEM PATHS:      - /home/awlad/.rvm/gems/ruby-2.1.0      - /home/awlad/.rvm/gems/ruby-2.1.0@global   - GEM CONFIGURATION:      - :update_sources => true      - :verbose => true      - :backtrace => false      - :bulk_threshold => 1000   - REMOTE SOURCES:      - https://rubygems.org/   - SHELL PATH:      - /home/awlad/.rvm/gems/ruby-2.1.0/bin      - /home/awlad/.rvm/gems/ruby-2.1.0@global/bin      - /home/awlad/.rvm/rubies/ruby-2.1.0/bin      - /usr/local/sbin      - /usr/local/bin      - /usr/sbin      - /usr/bin      - /sbin      - /bin      - /usr/games      - /usr/local/games      - /home/awlad/.rvm/bin      - /home/awlad/.rvm/bin      - /home/awlad/.rvm/bin

rvm use 2.1.0 --default then when i run gem install rails -v 4.1.1 I am getting: ERROR: While executing gem ... (NoMethodError) undefined method 'ord' for nil:NilClass

UPDATE:

After creating new gemset with ruby 2.1.0 in a project directory when i use this new gemset and trying to install bundle I got :

home/awlad/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- bundler (LoadError)         from /home/awlad/.rvm/rubies/ruby-2.1.0/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require'         from /usr/bin/bundle:7:in `<main />

After use: \curl -sSL https://get.rvm.io | bash -s stable --rails

It is working for built in ruby version which one was installed by above command. When I am trying to installed other ruby version and gemset then I am getting above bundler load error.

Anyone can help me to get rid of this? I will provide any other information if needed.

Thanks

回答1:

Try:

gem update --system

You can also update your system that might solve your problem, see here.



回答2:

I suppose the problem is that bundle is here /usr/bin/bundle. I am not 100% sure, but I think that gem install bundle will override the bundle in /usr/bin/bundle.



回答3:

I am answering and accepting this question because someone may get help from this.

After investigating few days ( googling, creating new issue in rvm) I have found that it is a Ruby bug was fixed here

I had to upgrade ruby version to 2.1.7 to solve this issue.

You can get details from rvm issue tracker.



易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!