2016-10-16 4 views
-2

У меня есть некоторые проблемы с установкой моего драгоценного камня Postgres. Когда я бегу:PostgreSQL ruby ​​gem установка выпуск

gem install pg -v '0.19.0' 

печатает:

Successfully installed pg-0.19.0 
Parsing documentation for pg-0.19.0 
Done installing documentation for pg after 2 seconds 
1 gem installed 

, но когда я бегу:

bundle install 

останавливается на стр самоцвета и гравюр:

An error occurred while installing pg (0.19.0), and Bundler cannot continue. 
Make sure that `gem install pg -v '0.19.0'` succeeds before bundling. 

весь журнал:

sh: /usr/pgsql-9.1/bin/pg_config: No such file or directory 
sh: /usr/pgsql-9.1/bin/pg_config: No such file or directory 
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. 

gem env выходы:

/ruby/2.3.0/rubygems/commands/environment_command.rb:154: warning: Insecure world writable dir /usr/local/bin in PATH, mode 040777 
RubyGems Environment: 
    - RUBYGEMS VERSION: 2.5.1 
    - RUBY VERSION: 2.3.0 (2015-12-25 patchlevel 0) [x86_64-darwin16] 
    - INSTALLATION DIRECTORY: /.rvm/gems/ruby-2.3.0 
    - USER INSTALLATION DIRECTORY: /.gem/ruby/2.3.0 
    - RUBY EXECUTABLE: /.rvm/rubies/ruby-2.3.0/bin/ruby 
    - EXECUTABLE DIRECTORY: /.rvm/gems/ruby-2.3.0/bin 
    - SPEC CACHE DIRECTORY: /.gem/specs 
    - SYSTEM CONFIGURATION DIRECTORY: /.rvm/rubies/ruby-2.3.0/etc 
    - RUBYGEMS PLATFORMS: 
    - ruby 
    - x86_64-darwin-16 
    - GEM PATHS: 
    - /.rvm/gems/ruby-2.3.0 
    - /.rvm/gems/[email protected] 
    - GEM CONFIGURATION: 
    - :update_sources => true 
    - :verbose => true 
    - :backtrace => false 
    - :bulk_threshold => 1000 
    - REMOTE SOURCES: 
    - https://rubygems.org/ 
    - SHELL PATH: 
    - /.rvm/gems/ruby-2.3.0/bin 
    - /.rvm/gems/[email protected]/bin 
    - /.rvm/rubies/ruby-2.3.0/bin 
    - /.rvm/bin 
    - /usr/local/bin 
    - /usr/bin 
    - /bin 
    - /usr/sbin 
    - /sbin 
+3

Возможный дубликат [Не удается найти заголовок libpq-fe.h при попытке установить pg gem] (http://stackoverflow.com/questions/6040583/cant-find-the-libpq-fe-h -header-when-try-to-install-pg-gem) – MarsAtomic

+0

какая ОС вы используете? – adil

+0

@adil Mac OS Sierra – Doe

ответ

0

Я удивлен, что камень установлен стр без него, зная, на котором установлена ​​PostgreSQL.

Сообщения об ошибках

sh: /usr/pgsql-9.1/bin/pg_config: No such file or directory 
checking for libpq-fe.h... no 
Can't find the 'libpq-fe.h header 

являются результатом кода не в состоянии найти заголовки, которые являются результатом не находя pg_config.

Простым решением является временное обновление вашей PATH каталогом, содержащим pg_config. Вы можете сделать это легко с помощью locate:

locate pg_config 

В моей системе, которая возвращает:

/Applications/Postgres.app/Contents/Versions/9.5/bin/pg_config 

среди других вещей. pg_config вы хотите в каталоге bin для любого PostgreSQL, который вы хотите использовать с Ruby.

Если у вас нет locate работы вы могли бы также сделать:

find/-name pg_config -type f 2>/dev/null 

и ждать, пока find поисков вашего диска. (Имея locate доступны для вас очень полезным, так что если он не работает, я бы предложил запустить его.)

Измените PATH с пути к pg_config затем запускать команды:

PATH=/Applications/Postgres.app/Contents/Versions/9.5/bin:$PATH gem install pg && bundle install 

Измените путь к pg_config для вашей системы, конечно.

Это может также работать, чтобы удалить gem install pg && и просто запустить bundle install.

+0

где написать мой ПУТЬ? В '.bashrc'? – Doe

+0

Сделайте это, как я показал в своем примере. –

+0

«Измените свой PATH», где мне нужно его изменить? В .bashrc или? В каком файле? – Doe

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