Произошла ошибка при установке 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.
Как это исправить?
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
приложения корень:
- brew update
- brew install postgres
- gem install pg -- --with-pg-config=/usr/local/Cellar/postgresql/9.3.4/bin / pg_config
- bundle install
- ln-sfv / usr/local/opt/postgresql/*.plist ~ / Library / LaunchAgents
- launchctl load ~ / Library/LaunchAgents / homebrew.mxcl.postgresql.файл plist
- createuser-S-r postgres
- грабли db: create: all
- rake db: migrate
- рельсы 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. Элемент
pggem требует некоторых заголовков из 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
после установки 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
]2

Comments