Jason Swett
Jason Swett

Reputation: 45174

"no such file to load -- pg" when trying rake db:create

The symptom of my problem is pretty simple:

$ rake db:create
(in /home/jason/projects/blog)
rake aborted!
no such file to load -- pg

(See full trace by running task with --trace)

I've already successfully run bundle install and gem install pg, so I don't know what else I might need to do.

Here's my `config/database.yml if it helps:

# SQLite version 3.x
#   gem install sqlite3-ruby (not necessary on OS X Leopard)
development:
  adapter: postgresql
  encoding: unicode
  database: blog_development
  pool: 5
  username: blog
  password: foo

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
  adapter: postgresql
  encoding: unicode
  database: blog_development
  pool: 5
  username: blog
  password: foo

production:
  adapter: sqlite3
  database: db/production.sqlite3
  pool: 5
  timeout: 5000

Upvotes: 2

Views: 4718

Answers (3)

peter prabu
peter prabu

Reputation: 11

Go to console and type below:

vim Gemfile

Inside the file commend the below:

- #gem 'sqlite3-ruby', :require => 'sqlite3'

Inside the file add the below:

- gem 'pg', :require => 'pg'

Problem Solved!!! :-) Enjoy!

Upvotes: 1

Jason Swett
Jason Swett

Reputation: 45174

I figured it out. If I use pg instead of postgresql in my config/database.yml, it works.

Upvotes: 4

Scott
Scott

Reputation: 17267

One possibility is that the rake binary that you are running is from another ruby/gem environment and that it doesn't have access to the gems that you've installed.

If you have more than one version of ruby installed, try running which gem and then which rake to see if they are being run from the same bin directory. For example, on my machine both binaries are executed from bin directories under the same Ruby install:

/Users/scott/.rvm/rubies/ruby-1.9.2-p136/bin/gem

/Users/scott/.rvm/gems/ruby-1.9.2-p136/bin/rake

If you only have one ruby version installed on your system, then this isn't the answer!

Upvotes: 0

Related Questions