Произошла ошибка при установке pg (0.17.1), и Bundler не может продолжить



Я только что установил Rails 4.0.2 и при создании нового приложения, в стадии расслоения я:



Installing pg (0.17.1) 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/Dee/.rvm/rubies/ruby-2.0.0-p247/bin/ruby extconf.rb
checking for pg_config... no
No pg_config... trying anyway. If building fails, please try again with
--with-pg-config=/path/to/pg_config
checking for libpq-fe.h... no
Can't find the 'libpq-fe.h header
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers. Check the mkmf.log file for more details. You may
need configuration options.


Как это исправить?

744   13  

13 ответов:

Я на Mac работает Mavericks. Мое решение было установить Postgres.

а затем в терминале установить с помощью homebrew с конфигурацией:

gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/latest/bin/pg_config

Примечание: этот ответ был отредактирован, чтобы использовать latest символическая ссылка, которая в настоящее время включена в версии доставки приложения Postgres.

предыдущие версии предложил:

gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.4/bin/pg_config

какая-то ошибка, перенесенная сюда установка PG gem на OS X-отказ от создания собственного расширения

чтобы установить зависимости от Ubuntu попробуйте следующее:

sudo apt-get install libpq-dev

и

gem install pg

приложения корень:

  1. brew update
  2. brew install postgres
  3. gem install pg -- --with-pg-config=/usr/local/Cellar/postgresql/9.3.4/bin / pg_config
  4. bundle install
  5. ln-sfv / usr/local/opt/postgresql/*.plist ~ / Library / LaunchAgents
  6. launchctl load ~ / Library/LaunchAgents / homebrew.mxcl.postgresql.файл plist
  7. createuser-S-r postgres
  8. грабли db: create: all
  9. rake db: migrate
  10. рельсы s

Примечание: при необходимости замените номер версии на Шаге 3.

ранее работающий ответ с более старой версией

Я установил под mac OSX Mavericks, имея приложение postgres (версия 9.2.2.0 ) от www.postgresapp.com установлен. Основная проблема заключалась в том, что поскольку postgres был установлен через приложение, файл конфигурации находится в местоположении, которое не является стандартным при его установке без postgressapp. поэтому нам нужно сказать gem, где найти этот файл:

gem установить pg -- -- with-pg-config=/Applications/Postgres.app / Contents/MacOS/bin / pg_config

надеюсь, что это помогает

Если gem install pg не удается, попробуйте выполнить следующую команду:

env ARCHFLAGS="-arch x86_64" gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/MacOS/bin/pg_config

... из PostgreSQL.документация по приложению

похоже, у вас не установлен PostgreSQL. Элемент pg gem требует некоторых заголовков из PostgreSQL для компиляции собственного расширения.

Я должен был объединить все и использовать

sudo env ARCHFLAGS="-arch x86_64" gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.4/bin/pg_config

Если вы используете что-то другое, чем Postgres в разработке и Postgres только в производстве, вы можете добавить PG gem в свой gemfile следующим образом...

group :production do
  gem 'pg',             '0.17.1'
end

затем использовать bundle install --without production

для пользователей CentOS:

sudo yum install postgresql-devel

и

gem install pg

после установки Postgres мне пришлось выполнить следующую команду

env ARCHFLAGS="-arch x86_64" gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config

после установки этого пакета отлично работает!

надеюсь, что это помогает

то, как мне удалось пройти мимо этой ошибки было:

  • cd в папку приложения, а затем установите версию ruby локально. Я использую ruby 2.1.2.

rbenv local 2.1.2

  • вместо того, чтобы просто запустить bundle install, установите драгоценные камни в vendor / bundle

bundle install --path vendor / bundle

Это сделало это для меня.

Мне нужно было использовать sudo

sudo gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.5/bin/pg_config

это работает для меня

rvm list gemsets
rvm use ruby-2.4.1
bundle

error[![resolved with rvm use ruby]2

Comments

    Ничего не найдено.