2013-08-21 4 views
1

Я думаю, что это распространенная проблема, однако решения, которые я нашел в Интернете, не работают на меня. Когда я бегу пакет установки с помощью этого раздела в моей GemfileОшибка Postgresql при установке пакета

group :production, :staging do 
    gem "pg" 
end 

group :development, :test do 
    gem "sqlite3-ruby", :require => "sqlite3" 
end 

Я получаю следующую ошибку

creating Makefile 

make 
compiling gvl_wrappers.c 
compiling pg.c 
pg.c: In function ‘Init_pg_ext’: 
pg.c:375: error: ‘PQPING_OK’ undeclared (first use in this function) 
pg.c:375: error: (Each undeclared identifier is reported only once 
pg.c:375: error: for each function it appears in.) 
pg.c:377: error: ‘PQPING_REJECT’ undeclared (first use in this function) 
pg.c:379: error: ‘PQPING_NO_RESPONSE’ undeclared (first use in this function) 
pg.c:381: error: ‘PQPING_NO_ATTEMPT’ undeclared (first use in this function) 
make: *** [pg.o] Error 1 


Gem files will remain installed in /usr/local/rvm/gems/ruby-1.9.3-p194/gems/pg-0.16.0 for inspection. 
Results logged to /usr/local/rvm/gems/ruby-1.9.3-p194/gems/pg-0.16.0/ext/gem_make.out 

Следующий шаг, в соответствии с тем, что я нашел, это запустить locate pg_config, то место расположения после команды командной строки gem install pg. Тем не менее, я получаю эту ошибку вместо того, чтобы:

WARNING: The locate database (/var/db/locate.database) does not exist. 
To create the database, run the following command: 

sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist 

Please be aware that the database can take some time to generate; once 
the database has been created, this message will no longer appear. 

Я затем запустить команду sudo, и получить эту последнюю ошибку ....

launchctl: Couldn't stat("/System/Library/LaunchDaemons/com.apple.locate.plis"): No such file or directory 
nothing found to load 

Это моя первая попытка с помощью этой технологии, новый к Mac также. Любая помощь будет оценена по достоинству. Благодаря!

EDIT

Я пытаюсь следовать предложениям located here относительно этой ошибки.

+0

это .plist файл, не .plis - Вы можете использовать mdfind вместо найти на макинтош. mdfind использует базу данных mac os x spotlight файлов – Ivan

+0

Удалось найти местоположение файла pg_config ('/ usr/bin/pg_config'), однако после добавления в оператор' gem install' все еще была получена такая же ошибка. – NealR

ответ

1

Похоже, что, несмотря на то, что говорит ваш gemfile, вы пытаетесь установить postgres локально?

Действительно, это то, что вы должны делать. На самом деле неоптимально использовать другую базу данных в производстве для той, которую вы используете локально. Я настоятельно рекомендую просто использовать Postgres везде и удалить sqlite.

На Mac, самый простой путь к этой нирваны установить Postgress.app

+0

Итак, я установил Postgress.app из ссылки. Затем снова запущены все команды сверху (пакетная установка, найти pg .. и т. Д.) И получили те же сообщения об ошибках. – NealR

+0

Хмм странно. Если вы запустите его снова, я собираюсь предположить, что при установке pg gem он закончит что-то вроде «/usr/local/rvm/gems/ruby-1.9.3-p194/gems/pg-0.16.0 /ext/foobar.out». Если это так, вставьте вывод foorbar.out здесь тоже .. –

+0

Кстати, суть, на которую вы указываете, предлагает попробовать с 0,15.1. У меня никогда не было проблем с Ruby 2 и pg gem - и я вижу, что использую 0.15.1. Можете ли вы попробовать изменить свой Gemfile так, чтобы он имел строку 'gem 'pg', '~> 0.15.1'' - сохранить и установить пакет, и посмотреть, что произойдет? –

Смежные вопросы