[英]An error occurred while installing pg (0.17.1), and Bundler cannot continue
[英]error occurred while installing pg (0.17.1)
當我在Rails項目上運行捆綁軟件時,我似乎得到了以下信息:
使用本地擴展安裝pg 0.17.1
Gem :: Ext :: BuildError:錯誤:無法構建gem本機擴展。
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r
./siteconf20151024-43303-t81fnp.rb extconf.rb正在檢查pg_config ...是使用/ usr / local / bin / pg_config中的配置值安裝pg(0.17.1)時發生錯誤,並且Bundler無法繼續。 捆綁之前,請確保
gem install pg -v '0.17.1'
成功。
我已經訪問了以下SO問題:
除此之外,我還嘗試執行以下命令:
gem install pg
env ARCHFLAGS="-arch x86_64" gem install pg
gem install pg -- --with-pg-config=/usr/local/Cellar/postgresql/9.4.5/bin/pg_config
而且我不斷得到:
錯誤:執行gem時...(Gem :: FilePermissionError)您沒有對/Library/Ruby/Gems/2.0.0目錄的寫權限。
僅供參考,我也安裝了rbenv。 還嘗試了rbenv rehash
並執行了上述命令,但沒有運氣。 我也嘗試過卸載並重新安裝Postgres並獲得相同的結果。 為了安全起見,我還跑過:
信息:
我不知道Mac,但是在Windows上遇到了這個問題。
-
問題在這里:
無法構建gem本機擴展
當您安裝gem時,許多高級版本實際上都是通過extconf.rb
文件進行編譯/“構建”的。 我已經忘記了它的重要性,但是它基本上允許gem在您使用的OS環境中本地運行。
簡而言之,發生錯誤是因為您的操作系統無權訪問gem需要編譯的“開發人員標頭”。
此問題的最常見實例是Windows上的mysql2
gem ,但其他情況也是如此。
-
您需要的是在嘗試安裝gem 之前,先在系統上下載PGSQL。
安裝PGSQL之后,您可能需要使用一些“開關”來引用開發人員標頭,但在這種情況下似乎並非如此:
Install Xcode command line tools (Apple Developer site)
brew uninstall postgresql
brew install postgresql
ARCHFLAGS="-arch x86_64" gem install pg
也許這行不通嗎? 我不知道...我知道在Windows中,您必須安裝二進制文件才能期望gem能夠正常工作。
問候,希望能有所幫助。 請問您是如何創建Rails項目的? 您是否簡單地使用:
rails new *appname*
如果是這樣,也許嘗試創建一個新的Rails應用程序,如下所示:
rails new *appname* -d postgresql
在創建數據庫並運行遷移/種子之前,您應該進入“ config / database.yml”並將用戶名和密碼更改為您希望在計算機上安裝了postgreSQL之后設置的postgreSQL用戶。
祝好運!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.