Я пытаюсь установить pg gem, чтобы снова работать с моими проектами rails. Но я получаю такую ошибку:
Создание собственных расширений. Это может занять некоторое время ... ОШИБКА: Ошибка при установке pg: ОШИБКА: не удалось создать собственное расширение gem.
/Users/jeanosorio/.rvm/rubies/ruby-2.0.0-p247/bin/ruby extconf.rb checking for pg_config... no No pg_config... trying anyway. If
сбой при сборке, попробуйте еще раз с --with-pg-config = / path / to / pg_config, проверяя наличие libpq-fe.h ... no Не удается найти заголовок libpq-fe.h * Ошибка extconf.rb * Не удалось создать Makefile по какой-то причине, возможно, из-за отсутствия необходимых библиотек и / или заголовков. Дополнительные сведения см. В файле mkmf.log. Вам могут потребоваться параметры конфигурации.
Предоставляемые параметры конфигурации: --with-opt-dir --without-opt-dir --with-opt-include --without-opt-include = $ {opt-dir} / include --with-opt-lib - без-opt-lib = $ {opt-dir} / lib --with-make-prog --without-make-prog --srcdir =. --curdir --ruby = / Users / jeanosorio / .rvm / rubies / ruby-2.0.0-p247 / bin / ruby --with-pg --without-pg --with-pg-config --without-pg -config --with-pg_config --without-pg_config --with-pg-dir --without-pg-dir --with-pg-include --without-pg-include = $ {pg-dir} / include - -with-pg-lib --without-pg-lib = $ {pg-dir} /
Файлы Gem останутся установленными в /Users/jeanosorio/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/gems/2.0.0/gems/pg-0.17.0 для проверки. Результаты сохраняются в /Users/jeanosorio/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/gems/2.0.0/gems/pg-0.17.0/ext/gem_make.out
Я перепробовал все, что нашел в stackoverflow, но все равно получаю эту ошибку.
Если я попытаюсь установить postgresql с помощью brew, я получаю следующее предупреждение:
Предупреждение: postgresql-9.2.4 уже установлен, он просто не связан
Если я попытаюсь связать
brew link postgresql Связывание /usr/local/Cellar/postgresql/9.2.4 ... Предупреждение: не удалось связать postgresql. Отключение…
Ошибка: не удалось создать символическую ссылку: /usr/local/Cellar/postgresql/9.2.4/share/man/man7/WITH.7 / usr / local / share / man / man7 недоступен для записи. Вам следует изменить его разрешения.
Помогите, пожалуйста
ПРИМЕЧАНИЕ. Я уже установил инструменты командной строки для mavericks.
Если я удалю с помощью homebrew и попытаюсь установить снова, я получу эту ошибку:
==> Загрузка http://ftp.postgresql.org/pub/source/v9.2.4/postgresql-9.2.4.tar.bz2
################################################ ################ 100,0%==> Файл исправлений src / pl / plpython / Makefile Файл исправлений contrib / uuid-ossp / uuid-ossp.c ==> ./configure --prefix = / usr / local / Cellar / postgresql / 9.2.4 - datadir = / usr / local / Cellar / postgresql / 9.2.4 / share / postgresql --docdir = / usr / local / Cellar / p ==> make install-world ==> Предостережения
Примечания к сборке
Если сборки PostgreSQL 9 дают сбой и у вас установлена версия 8.x, вам может потребоваться сначала удалить предыдущую версию. См.
Https://github.com/mxcl/homebrew/issues/issue/2510Создать / обновить базу данных
Если это ваша первая установка, создайте базу данных с помощью: initdb / usr / local / var / postgres -E utf8
Чтобы перенести существующие данные из предыдущей основной версии (до 9.2) PostgreSQL, см .:
http://www.postgresql.org/docs/9.2/static/upgrading.htmlЗагрузка расширений
По умолчанию Homebrew собирает все доступные расширения Contrib. Чтобы увидеть список всех доступных расширений, из командной строки psql выполните:
SELECT * FROM pg_available_extensions;Чтобы загрузить любое из имен расширений, перейдите к нужной базе данных и выполните: CREATE EXTENSION [extension name];
Например, чтобы загрузить расширение tablefunc в текущую базу данных, запустите: CREATE EXTENSION tablefunc;
Для получения дополнительной информации о команде CREATE EXTENSION см .:
http://www.postgresql.org/docs/9.2/static/sql-createextension.html Дополнительные сведения о расширениях см .:
http://www.postgresql.org/ документы / 9.2 / static / contrib.htmlДругой
На некоторых машинах может потребоваться выделение общей памяти:
http://www.postgresql.org/docs/9.2/static/kernel-resources.html#SYSVIPC При установке гема postgres рекомендуется включать ARCHFLAGS: ARCHFLAGS = "- arch x86_64" gem install pgЧтобы установить драгоценные камни без sudo, см. Вики Homebrew.
Чтобы запустить postgresql при входе в систему: ln -sfv /usr/local/opt/postgresql/*.plist ~ / Library / LaunchAgents Затем, чтобы загрузить postgresql сейчас: launchctl load ~ / Library / LaunchAgents / homebrew.mxcl.postgresql.plist Или , если вы не хотите / не нуждаетесь в launchctl, вы можете просто запустить: pg_ctl -D / usr / local / var / postgres -l /usr/local/var/postgres/server.log start Предупреждение: не удалось связать postgresql. Отключение ... Ошибка:
brew link
шаг не был завершен успешно Формула создана, но не имеет символической ссылки в / usr / local. Вы можете попробовать еще раз, используя `brew link postgresql '==> Сводка 🍺 /usr/local/Cellar/postgresql/9.2 .4: 2831 файл, 38 МБ, построено за 4,9 минуты
РЕШЕНИЕ:
Я выполняю эту команду, чтобы изменить разрешение папки:
Судо Чоун jeanosorio / usr / local / share / man / man7
затем
brew link postgresql Linking /usr/local/Cellar/postgresql/9.3.1 ... Создано 421 символических ссылок
И наконец:
sudo ARCHFLAGS = "- arch x86_64" gem install pg
Получение: pg-0.17.0.gem (100%) Создание собственных расширений. Это может занять некоторое время ... Успешно установлен pg-0.17.0
export CONFIGURE_ARGS="with-pg-config=/Applications/Postgres.app/Contents/MacOS/bin/pg_config"