Когда я пытаюсь запустить пакет (установка пакета), я все время получаю
Installing pg (0.13.2) with native extensions
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/ryan/.rvm/rubies/ruby-1.9.2-p290/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.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/Users/ryan/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
--with-pg
--without-pg
--with-pg-dir
--without-pg-dir
--with-pg-include
--without-pg-include=${pg-dir}/include
--with-pg-lib
--without-pg-lib=${pg-dir}/lib
--with-pg-config
--without-pg-config
--with-pg_config
--without-pg_config
Gem files will remain installed in /Users/ryan/.rvm/gems/ruby-1.9.2-p290/gems/pg-0.13.2 for inspection.
Results logged to /Users/ryan/.rvm/gems/ruby-1.9.2-p290/gems/pg-0.13.2/ext/gem_make.out
An error occured while installing pg (0.13.2), and Bundler cannot continue.
Make sure that `gem install pg -v '0.13.2'` succeeds before bundling.
Я использую Mac OS X 10.6, версия установленного PostgreSQL - 9.1. Я обнаружил, что проблема в libpq-dev , как я могу это установить / исправить?
ruby-on-rails
macos
postgresql-9.1
pg
libpq
user984621
источник
источник
sudo port install libpq-dev
но другая проблема -Error: Port libpq-dev not found To report a bug, see <http://guide.macports.org/#project.tickets>
. Это ужасно, все еще есть проблемы ...Ответы:
Как указано в вашем журнале ошибок, вам необходимо указать путь к файлу pg_config. Попробуйте установить драгоценный камень, используя:
Если вы не уверены, где находится ваш pg_config, и предполагаете, что находитесь в Linux или Mac, вы можете выполнить следующую команду:
Ваш pg-config может находиться в разных местах в зависимости от того, как вы установили postgres.
источник
pg_config
программы.pg_config
(например, в/Library/PostgreSQL/9.1/bin/pg_config
течение 9.1.x) и заголовки развития. Это то, что я использую для тестированияpg
драгоценного камня в разработке.which pg_config
бы быстрее чемfind / -name pg_config
?brew install libpqxx
и все будет хорошо.если вы работаете в Linux, вам может быть интересно, что сработало для меня:
затем
затем
SRC: http://wikimatze.de/installing-postgresql-gem-under-ubuntu-and-mac
источник
Если вы используете Postgress.app, вам понадобится доступ к его инструментам командной строки . Введите следующую строку в свой терминал или свой профиль PATH :
gem install pg
теперь должно работать. (Это то, что сработало для меня.)Примечание Путь к новым версиям выглядит так:
источник
/Applications/Postgres.app/Contents/Versions/9.3/bin
состоянию на 9.3.5, если вы используете Postgres.appЕсли у вас домашнее пиво, просто введите:
Если у вас его нет, загрузите его, набрав в терминале:
источник
Найдите libpq:
Должен выводить
libpqxx
Затем попробуйте установить его:
источник
Вам нужно всего лишь установить
libpq-dev
:Тогда драгоценный камень должен установиться нормально.
источник
Следуйте инструкциям после установки: http://postgresapp.com/documentation/configuration-ruby.html
Чтобы установить pg gem, убедитесь, что вы правильно настроили свой $ PATH (как указано в http://postgresapp.com/documentation/cli-tools.html ), затем запустите
sudo ARCHFLAGS="-arch x86_64" gem install pg
Я настоятельно рекомендую прочитать обе страницы. Просто просмотрел их и потерял 1 час своей жизни. Прочтите их, проблема решена.
источник
Проблема заключалась в том, что по какой-то причине он пытался скомпилировать с /usr/bin/gcc-4.2. Я обнаружил это, изменив try_cpp в mkmf.rb (который я видел в трассировке стека), чтобы вызвать исключение с ошибочной строкой компиляции.
Я мягко связал gcc с gcc-4.2, и это сработало:
Почему он пытался использовать gcc-4.2? Без понятия.
Фактическая строка компиляции:
источник
У меня такая же проблема, но мой Postgres был установлен в
/Library/PostgreSQL/9.3
Обновил ~ / .bash_profile, добавив:
Откройте новый терминал, запустите,
bundle update
и у меня тоже это сработало. Спасибо, Ари.источник
Вы можете установить параметр конфигурации сборки
bundle config build.pg --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config
и использовать егоgem install pg
без каких-либо параметров (путь к pg_config может быть другим для вас, это для Postgresapp 9.3.5.0)источник
У меня была такая же проблема на моей машине с openSUSE13.1 KDE. Перед этой проблемой, с которой я столкнулся, я устанавливал только пакеты
postgresql
иpostgresql-server
использовалzypper
команду. Затем снова установил еще 2 пакета:Затем я снова побежал
bundle install
, и успех !!!источник
Для рабочего решения OSX см. Это руководство http://krugerdavid.com/journal/how-to-install-xcode-homebrew-git-rvm-postgresql-ruby-1-9-3-on-snow-leopard/
Он проведет вас через установку PostgreSQL с помощью homebrew. Протестировано и работает у меня на OSX 10.8.3, PostgreSQL 9.2.3 и Ruby 2.0.0-p0
источник
Сначала удалите все версии Homebrew. Параметр --force позволяет удалить все версии.
Измените пути в соответствии с вашей версией.
Отредактируйте / etc / profile и удалите все строки, которые ссылаются на postgres.
Установить PostgresSQL
Установить PG GEM
Вот и все. С уважением.
источник
Сначала вы можете проверить, есть ли у вас в терминале файл postrgresql, перейдя в файл lib. перейдите cd ~ / opt / local / lib /, а затем введите ls и кнопку ввода. Это покажет вам список всех файлов, находящихся в каталоге lib.
1. если у вас нет postreseql, вы можете скачать его через macports. sudo порт установить postgresql93 @ 9.3.2_1
Теперь вернитесь в свою папку, которую вы пытаетесь связать с установкой.
теперь запустите установку пакета
источник
В Fedora:
источник
Что сработало для меня в El Capitan, так это обновление ruby с системного значения по умолчанию до 2.3.1, казалось, нашло правильные библиотеки, которые
pg
нужны гему.источник