簡體   English   中英

Rails - 安裝 pg (1.1.3) 時出現 Gem 錯誤,並且 Bundler 無法繼續

[英]Rails - Gem Error while installing pg (1.1.3), and Bundler cannot continue

我對 Rails 還是很陌生。 我正在嘗試推送到 Heroku,但我遇到了錯誤。

第一個錯誤是當我運行 Bundle Install 時,我收到以下錯誤消息:

“安裝 pg (1.1.3) 時出錯,Bundler 無法繼續。在捆綁之前確保gem install pg -v '1.1.3'成功。”

我試圖運行這個命令

gem install pg -v '1.1.3'

但它失敗了,並給了我這個錯誤信息:

“錯誤:安裝 pg 時出錯:錯誤:無法構建 gem 原生擴展。”

有人對此有解決方案嗎?

我遇到了完全相同的問題,並通過運行sudo apt install postgresql-contrib libpq-dev解決了它。 然后捆綁工作得很好。

如果您使用的是 OSX,則可以嘗試運行

brew install postgresql

然后安裝 gem

我遇到了同樣的問題。 我正在使用 Ubuntu。 我使用這個Ubuntu 指南安裝了 Postgres。 安裝 Postgres 后,我運行此代碼sudo apt install postgresql-contrib libpq-dev然后 bundle install。

嘗試使用 pg-config 安裝,如下所示:
gem install pg -v 1.1.3 -- --with-pg-config=/usr/pgsql-9.X/bin/pg_config

在 pg-config 路徑中​​提及您系統中安裝的 posgtres 版本。

以下僅適用於您的本地環境:

注意:更新下面的命令以匹配您的版本postgresql/13.2/...

> brew install postgres
> sudo gem install pg -v '1.1.4' --source 'https://rubygems.org/' -- --with-pg-config=/usr/local/Cellar/postgresql/13.2/bin/pg_config

另外,請確保啟動您的服務器> pg_ctl -D /usr/local/var/postgres start

TL; 博士; 如果您使用 PostgresAPP 而不是 BREW 安裝了 Postgres,那么問題可能是您在 $APTH 中沒有 postgres bin 文件夾

解決方案是在其中找到 Posgres 應用程序安裝文件夾和 /bin 文件夾。

在我的情況下,如果我運行which postgres不起作用,這意味着我的 $PATH 中沒有它,所以我所做的是導航到: cd /Applications/Posgres.app然后到Contents然后到Versions直到我找到latest文件夾:

/Applications/Postgres.app/Contents/Versions/latest/bin

現在,我可以通過提供我的 Postgres 應用程序安裝的 bin 文件夾的路徑來安裝 PG GEM

最后,在我的 Rails 項目根目錄的終端中,我運行了我向 GEM 安裝程序提供 postgres 配置文件路徑的地方:

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

Postgresql 需要在本地才能安裝 gem pg。 嘗試這個

brew install postgresql

和重新安裝包

bundle install

或者如果您使用的是 yum。 嘗試這個

sudo yum install postgresql-devel

接受的答案不正確。 如果您安裝了 Cesar Faria 回答中提到的 postgresql-contrib 和 libpq-dev ,並且仍然遇到相同的錯誤,則很可能您錯過了被認為對構建 Debian 軟件包至關重要的軟件包列表。 build-essential 包中包含的所有包。 因此,您需要做的就是擺脫錯誤是下面的命令。

sudo apt install libpq-dev build-essential

暫無
暫無

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

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