簡體   English   中英

安裝 pg (0.17.1) 時出錯,Bundler 無法繼續

[英]An error occurred while installing pg (0.17.1), and Bundler cannot continue

我剛剛安裝了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.

我該如何解決?

此處報告了某種錯誤在 OS X 上安裝 PG gem - 無法構建本機擴展

要在 Ubuntu 上安裝依賴項,請嘗試以下操作:

sudo apt-get install libpq-dev

而這

gem install pg

我在運行 Mavericks 的 Mac 上。 我的解決方案是安裝Postgres

然后在終端安裝使用自制軟件和配置:

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

注意:此答案已被編輯為使用當前包含在 Postgres 應用程序的發布版本中的latest符號鏈接。

以前的版本建議:

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

應用程序根:

  1. 釀造更新
  2. brew 安裝 postgres
  3. gem install pg -- --with-pg-config=/usr/local/Cellar/postgresql/ 9.3.4 /bin/pg_config
  4. 捆綁安裝
  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. 耙數據庫:遷移
  10. 導軌

注意:如果需要,請替換步驟 3 中的版本號。

以前使用舊版本的工作答案

我安裝在 mac OSX Mavericks 下,安裝了來自www.postgresapp.com的 postgres 應用程序(版本 9.2.2.0)。 潛在的問題很簡單,因為 postgres 是通過應用程序安裝的,所以配置文件駐留在一個位置,在沒有 postgressapp 的情況下安裝它時,該位置不是默認位置。 所以我們需要告訴 gem 在哪里可以找到這個文件:

gem install 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.app 文檔

看起來您沒有安裝 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

我剛剛設置了一個新的 Macbook Pro,它是用 Catalina 預構建的。

什么對我有用:

  1. 從這里安裝 Postgres: https : //postgresapp.com/
  2. export PATH="/Applications/Postgres.app/Contents/Versions/latest/bin:$PATH"到您的.zshenv ,因為 Z shell 現在是默認終端。

安裝 Postgres 后,我必須運行以下命令

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

在此捆綁安裝后效果很好!

希望它有幫助

我設法克服該錯誤的方法是:

  • cd 到 app 文件夾,然后在本地設置 ruby​​ 版本。 我正在使用 ruby​​ 2.1.2。

rbenv 本地 2.1.2

  • 而不是僅僅運行 bundle install,在 vendor/bundle 中安裝 gems

捆綁安裝 --path 供應商/捆綁

這為我做到了。

我需要使用 sudo

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

我在使用 Amazon 時遇到問題,無法使用 apt-get。 對於我的工作:

    sudo yum install postgresql-devel

然后:

    bundle install

然后再試一次:

    rails serve

如果您是通過 Homebrew 安裝的; gem install pg -- --with-pg-config=/usr/local/bin/pg_config 適用於 Ruby 2.4.6 和 pg 0.20.0。

在 mac 上,這個命令對我有用。

gem install pg -v '0.18.4' -- --with-cflags="-Wno-error=implicit-function-declaration"

這個對我有用

rvm list gemsets
rvm use ruby-2.4.1
bundle

錯誤[![用 rvm 解決,使用 ruby ] 2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM