【发布时间】:2018-06-24 23:24:12
【问题描述】:
我在尝试 gem install pg -v '0.18.4' 时遇到了困难,这是我大约 3 年前开发的 ruby on rails“捆绑安装”应用程序所需的。
sudo gem install pg -v '0.18.4'
以下投诉:
conftest.c:15:13: error: conflicting types for 'PQconnectdb'
extern void PQconnectdb();
完全执行错误https://gist.github.com/axilaris/f521685f4e5c7a8e5653bf672af1efa7
mkmf.log - https://gist.github.com/axilaris/2e4cf2729b34d751c1ce76b046a0b21c
我的环境如下:
Postgres 9.4.0.1
MacOs Sierra High 10.13.1
$ ruby -v
ruby 2.3.3p222 (2016-11-21 revision 56859) [universal.x86_64-darwin17]
$ rails -v
Rails 5.1.4
我尝试安装 冲泡安装 libpqxx 它不起作用
这里有一些相关的stackoverflow:
Can't find the 'libpq-fe.h header when trying to install pg gem
Impossible to Install PG gem on my mac with Mavericks
我想确保安装 - sudo gem install pg -v '0.18.4'。由于在生产中它也应该运行它。我不想破坏生产 ubuntu 服务器中运行的任何东西。目前对于这个问题,我正在我的mac上设置环境以进行开发以尝试修复代码。
仅供参考,我在 2 台 Mac 上试过。一个是升级到sierra high的原始开发mac,另一个是新安装的sierra high的新格式化mac。
【问题讨论】:
-
请告诉我
brew install postgresql的结果。如果您没有自制软件,请执行此操作ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" -
它已经安装了,所以它抱怨这个gist.github.com/axilaris/daa8c7831870ed4f41e20e5ecefef7da。我有点害怕卸载它,因为我有我的开发环境,它会删除现有的db
-
打开
gemfile.lock并搜索pg,让我们知道pg的gem版本。 -
这是 gemfile.lock gist.github.com/axilaris/163e4a68360acd33438a545fbaab6029。 pg (0.18.4)
-
试试这个
ARCHFLAGS="-arch x86_64" gem install pg -v '0.18.4'
标签: ruby-on-rails macos postgresql rubygems bundle