`bin_path' for Gem:Module (NoMethodError)

rails expense
/usr/local/bin/rails:19: undefined method `bin_path’ for Gem:Module
(NoMethodError).

I keep getting the above error after installing rails. I have gone
through every
step at hivelogic. It worked once and ever since I have been getting the
above error.

I understand the issue is that the path is not configured properly…
on typing echo $PATH i get:
/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/bin:/sbin:/usr/bin:/usr/sbin

but when I execute <prompt%>. ~/.bash_login,
on typing echo $PATH i get:

/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/bin:/sbin:/usr/bin:/usr/sbin

help would be appreciated.

On Wed, Mar 10, 2010 at 3:55 AM, Faisal B. [email protected]
wrote:

rails expense
/usr/local/bin/rails:19: undefined method `bin_path’ for Gem:Module
(NoMethodError).

I keep getting the above error after installing rails.

How did you install it?

What do the following commands return:
which gem
which rails
gem env
gem list --local


Hassan S. ------------------------ [email protected]
twitter: @hassan

Hassan S. wrote:

On Wed, Mar 10, 2010 at 3:55 AM, Faisal B. [email protected]
wrote:

rails expense
/usr/local/bin/rails:19: undefined method `bin_path’ for Gem:Module
(NoMethodError).

I keep getting the above error after installing rails.

How did you install it?

What do the following commands return:
which gem
which rails
gem env
gem list --local


Hassan S. ------------------------ [email protected]
twitter: @hassan

Hi Hassan,
this is what I have…it seems I have 2 paths for gem paths for which I
have no clue how to get rid of…I have multiple users I don’t know if
that could be causing the error…thanks for your help though

unknown0011248da679:~ faisal$ which gem
/usr/local/bin/gem
unknown0011248da679:~ faisal$ which rails
/usr/local/bin/rails
unknown0011248da679:~ faisal$ gem env
RubyGems Environment:

  • RUBYGEMS VERSION: 1.3.1
  • RUBY VERSION: 1.8.6 (2007-03-13 patchlevel 0) [powerpc-darwin8.10.0]
  • INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.8
  • RUBY EXECUTABLE: /usr/local/bin/ruby
  • EXECUTABLE DIRECTORY: /usr/local/bin
  • RUBYGEMS PLATFORMS:
    • ruby
    • powerpc-darwin-8
  • GEM PATHS:
    • /usr/local/lib/ruby/gems/1.8
    • /Users/faisal/.gem/ruby/1.8
  • GEM CONFIGURATION:
    • :update_sources => true
    • :verbose => true
    • :benchmark => false
    • :backtrace => false
    • :bulk_threshold => 1000
  • REMOTE SOURCES:

*** LOCAL GEMS ***

actionmailer (2.3.5)
actionpack (2.3.5)
activerecord (2.3.5)
activeresource (2.3.5)
activesupport (2.3.5)
capistrano (2.1.0)
cgi_multipart_eof_fix (2.5.0)
daemons (1.0.9)
fastthread (1.0.1)
gem_plugin (0.2.3)
highline (1.4.0)
mongrel (1.1.1)
mysql (2.7)
needle (1.3.0)
net-sftp (1.1.0)
net-ssh (1.1.2)
rack (1.0.1)
rails (2.3.5)
rake (0.8.7)
rubygems-update (1.3.6)
sources (0.0.1)
sqlite3-ruby (1.2.1)
termios (0.9.4)

On Wed, Mar 10, 2010 at 11:38 AM, Faisal B. [email protected]
wrote:

Mostly that looks good; the only thing that strikes me right off is
the discrepancy between your reported gem version and that of
the rubygems-update.

unknown0011248da679:~ faisal$ gem env

  • RUBYGEMS VERSION: 1.3.1

*** LOCAL GEMS ***
rubygems-update (1.3.6)

You might want to try running:

sudo gem update --system


Hassan S. ------------------------ [email protected]
twitter: @hassan

Hassan S. wrote:

On Wed, Mar 10, 2010 at 11:38 AM, Faisal B. [email protected]
wrote:

Mostly that looks good; the only thing that strikes me right off is
the discrepancy between your reported gem version and that of
the rubygems-update.

unknown0011248da679:~ faisal$ gem env
�- RUBYGEMS VERSION: 1.3.1

*** LOCAL GEMS ***
rubygems-update (1.3.6)

You might want to try running:

sudo gem update --system


Hassan S. ------------------------ [email protected]
twitter: @hassan

k, after running the sudo gem update --system, I did the following…

unknown0011248da679:~ faisal$ gem env
RubyGems Environment:

  • RUBYGEMS VERSION: 1.3.6
  • RUBY VERSION: 1.8.6 (2007-03-13 patchlevel 0) [powerpc-darwin8.10.0]
  • INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.8
  • RUBY EXECUTABLE: /usr/local/bin/ruby
  • EXECUTABLE DIRECTORY: /usr/local/bin
  • RUBYGEMS PLATFORMS:
    • ruby
    • powerpc-darwin-8
  • GEM PATHS:
    • /usr/local/lib/ruby/gems/1.8
    • /Users/faisal/.gem/ruby/1.8
  • GEM CONFIGURATION:
    • :update_sources => true
    • :verbose => true
    • :benchmark => false
    • :backtrace => false
    • :bulk_threshold => 1000
  • REMOTE SOURCES:

unknown0011248da679:~ faisal$ gem list --local

*** LOCAL GEMS ***

actionmailer (2.3.5)
actionpack (2.3.5)
activerecord (2.3.5)
activeresource (2.3.5)
activesupport (2.3.5)
capistrano (2.1.0)
cgi_multipart_eof_fix (2.5.0)
daemons (1.0.9)
fastthread (1.0.1)
gem_plugin (0.2.3)
highline (1.4.0)
mongrel (1.1.1)
mysql (2.7)
needle (1.3.0)
net-sftp (1.1.0)
net-ssh (1.1.2)
rack (1.0.1)
rails (2.3.5)
rake (0.8.7)
rubygems-update (1.3.6)
sources (0.0.1)
sqlite3-ruby (1.2.1)
termios (0.9.4)

so now Iam able to create rails apps but unable to start server…

I created a rails called example:

unknown0011248da679:~ faisal$ rails example
create
create app/controllers
create app/helpers
create app/models
create app/views/layouts
create config/environments
create config/initializers
create config/locales
create db
create doc
create lib
create lib/tasks
create log
create public/images
create public/javascripts
create public/stylesheets
create script/performance
create test/fixtures
create test/functional
create test/integration
create test/performance
create test/unit
create vendor
create vendor/plugins
create tmp/sessions
create tmp/sockets
create tmp/cache
create tmp/pids
create Rakefile
create README
create app/controllers/application_controller.rb
create app/helpers/application_helper.rb
create config/database.yml
create config/routes.rb
create config/locales/en.yml
create db/seeds.rb
create config/initializers/backtrace_silencers.rb
create config/initializers/inflections.rb
create config/initializers/mime_types.rb
create config/initializers/new_rails_defaults.rb
create config/initializers/session_store.rb
create config/environment.rb
create config/boot.rb
create config/environments/production.rb
create config/environments/development.rb
create config/environments/test.rb
create script/about
create script/console
create script/dbconsole
create script/destroy
create script/generate
create script/runner
create script/server
create script/plugin
create script/performance/benchmarker
create script/performance/profiler
create test/test_helper.rb
create test/performance/browsing_test.rb
create public/404.html
create public/422.html
create public/500.html
create public/index.html
create public/favicon.ico
create public/robots.txt
create public/images/rails.png
create public/javascripts/prototype.js
create public/javascripts/effects.js
create public/javascripts/dragdrop.js
create public/javascripts/controls.js
create public/javascripts/application.js
create doc/README_FOR_APP
create log/server.log
create log/production.log
create log/development.log
create log/test.log

Well it’s a major improvement, since atleast this time Iam able to
create rails
app even after restarting the terminal. Otherwise I had to reload the
.bash_login file everytime after starting the terminal.

But now…

unknown0011248da679:~/example faisal$ ls
README config lib script vendor
Rakefile db log test
app doc public tmp
unknown0011248da679:~/example faisal$ ruby script/server
Rails requires RubyGems >= 1.3.2. Please install RubyGems and try again:
http://rubygems.rubyforge.org

I don’t understand the above warning , since I have rubygems 1.3.6.

Thanks for your help Hassan.

Hassan S. wrote:

On Thu, Mar 11, 2010 at 10:18 PM, Faisal B. [email protected]
wrote:

unknown0011248da679:~/example faisal$ ruby script/server
Rails requires RubyGems >= 1.3.2. Please install RubyGems and try again:
http://rubygems.rubyforge.org

I don’t understand the above warning , since I have rubygems 1.3.6.

What’s the output of script/about ?


Hassan S. ------------------------ [email protected]
twitter: @hassan

this is what I got…

unknown0011248da679:~/example faisal$ ruby script/about
Rails requires RubyGems >= 1.3.2. Please install RubyGems and try again:
http://rubygems.rubyforge.org
unknown0011248da679:~/example faisal$ script/about
Rails requires RubyGems >= 1.3.2. Please install RubyGems and try again:
http://rubygems.rubyforge.org

On Fri, Mar 12, 2010 at 7:44 AM, Faisal B. [email protected]
wrote:

unknown0011248da679:~/example faisal$ ruby script/about
Rails requires RubyGems >= 1.3.2. Please install RubyGems and try again:
http://rubygems.rubyforge.org

Sounds like it’s back to a bad path – somewhere you have more than
one gem command. Make sure your path is free of duplications, and
the directory with the ruby and gem you want is at the front.

And use find to track down the extraneous stuff and get rid of it :slight_smile:


Hassan S. ------------------------ [email protected]
twitter: @hassan

Hassan S. wrote:

On Fri, Mar 12, 2010 at 7:44 AM, Faisal B. [email protected]
wrote:

unknown0011248da679:~/example faisal$ ruby script/about
Rails requires RubyGems >= 1.3.2. Please install RubyGems and try again:
http://rubygems.rubyforge.org

Sounds like it’s back to a bad path – somewhere you have more than
one gem command. Make sure your path is free of duplications, and
the directory with the ruby and gem you want is at the front.

And use find to track down the extraneous stuff and get rid of it :slight_smile:


Hassan S. ------------------------ [email protected]
twitter: @hassan

Hi Hassan,

I’ve checked the paths in both the .bash_login and .bash_profile

.bash_login
export PATH=$PATH:/usr/local/bin:/usr/local/mysql/bin:$PATH

.bash_profile
export PATH=“/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:$PATH”

On looking at the PATH …I have “/usr/local/bin” written twice…so
Iam thinkin if I should remove the extra “/usr/local/bin”…???
just wanna make sure…thanks Hassan…

On Fri, Mar 12, 2010 at 9:08 AM, Faisal B. [email protected]
wrote:

I’ve checked the paths in both the .bash_login and .bash_profile

.bash_login
export PATH=$PATH:/usr/local/bin:/usr/local/mysql/bin:$PATH

That’s definitely going to create duplicates, which you don’t want,
but the critical thing is to make sure you’re using the ruby and gem
executables you think you are (or at least want to!).


Hassan S. ------------------------ [email protected]
twitter: @hassan

On Thu, Mar 11, 2010 at 10:18 PM, Faisal B. [email protected]
wrote:

unknown0011248da679:~/example faisal$ ruby script/server
Rails requires RubyGems >= 1.3.2. Please install RubyGems and try again:
http://rubygems.rubyforge.org

I don’t understand the above warning , since I have rubygems 1.3.6.

What’s the output of script/about ?


Hassan S. ------------------------ [email protected]
twitter: @hassan

Hassan S. wrote:

On Fri, Mar 12, 2010 at 9:08 AM, Faisal B. [email protected]
wrote:

I’ve checked the paths in both the .bash_login and .bash_profile

.bash_login
export PATH=$PATH:/usr/local/bin:/usr/local/mysql/bin:$PATH

That’s definitely going to create duplicates, which you don’t want,
but the critical thing is to make sure you’re using the ruby and gem
executables you think you are (or at least want to!).


Hassan S. ------------------------ [email protected]
twitter: @hassan

okay…how do I check the ruby and gem executables exactly…this is
what I know…

unknown0011248da679:~ faisal$ ruby -v
ruby 1.8.2 (2004-12-25) [powerpc-darwin8.0]

unknown0011248da679:~ faisal$ gem -v
1.3.6

but I know I have downloaded the ruby 1.8.6…now I dont’ exactly know
how to
check the ones that Iam currently using…the extraneous ones I
mean…

On Fri, Mar 12, 2010 at 9:37 AM, Faisal B. [email protected]
wrote:

okay…how do I check the ruby and gem executables exactly…this is
what I know…

unknown0011248da679:~ faisal$ ruby -v
ruby 1.8.2 (2004-12-25) [powerpc-darwin8.0]

That’s probably the problem right there.

which ruby will give you the location of the one currently first in
your
path. If it’s not the one you want, either change your path or get rid
of
the unwanted version.

And as I said, you can use find to look for other versions.


Hassan S. ------------------------ [email protected]
twitter: @hassan