Chris McCauley
Chris McCauley

Reputation: 26383

Merb, Bundler, RVM and 1.9.1 = Could not locate Gemfile (Bundler::GemfileNotFound)

Can anyone suggest how to fix this (Ubuntu 9.10):

/home/chris/.rvm/gems/ruby-1.9.1-p378/gems/bundler-0.9.26/lib/bundler/shared_helpers.rb:42:in `default_gemfile': Could not locate Gemfile (Bundler::GemfileNotFound)
    from /home/chris/.rvm/gems/ruby-1.9.1-p378/gems/bundler-0.9.26/lib/bundler/shared_helpers.rb:51:in `env_file'
    from /home/chris/.rvm/gems/ruby-1.9.1-p378/gems/bundler-0.9.26/lib/bundler.rb:143:in `env_file'
    from /home/chris/.rvm/gems/ruby-1.9.1-p378/gems/bundler-0.9.26/lib/bundler.rb:174:in `update_env_file?'
    from /home/chris/.rvm/gems/ruby-1.9.1-p378/gems/bundler-0.9.26/lib/bundler.rb:95:in `load'
    from /home/chris/.rvm/gems/ruby-1.9.1-p378/gems/bundler-0.9.26/lib/bundler.rb:76:in `gem_setup'
    from /home/chris/.rvm/gems/ruby-1.9.1-p378/gems/merb-core-1.1.2/bin/merb:10:in `rescue in <top (required)>'
    from /home/chris/.rvm/gems/ruby-1.9.1-p378/gems/merb-core-1.1.2/bin/merb:3:in `<top (required)>'
    from /home/chris/.rvm/gems/ruby-1.9.1-p378/bin/merb:19:in `load'
    from /home/chris/.rvm/gems/ruby-1.9.1-p378/bin/merb:19:in `<main>'

Thank

Chris


Update


I tried really hard to get this to work. Eventually I fell back to merb-core 1.0.12 and that worked fine.

Upvotes: 1

Views: 2108

Answers (2)

Chris McCauley
Chris McCauley

Reputation: 26383

Solution


I needed to write a Gemfile for my application and drop it into the root directory for the app.

I was upgrading across too many versions of Merb! My application was a flat, Rack application originally developed with a much older version of Merb. It didn't have (or need) a Gemfile. When I ran it against the latest Merb, the error was thrown. It would have been better if it said 'I can't find the Gemfile for your application'

I ran merb-gen to get a basic Gemfile and updated it with my own requirements.

Hope that helps someone!

Upvotes: 1

Mark Essel
Mark Essel

Reputation: 4646

Looks like you need a gem, and a dependency to build that gem. This might help, it helped me: postgres (on ubuntu) sudo apt-get install ruby-full build-essential postgresql-server-dev-8.3 (or 8.4) sudo gem install postgres

heroku uses postgresql-server-dev-8.3 if you're deploying there.

Upvotes: 0

Related Questions