【问题标题】:Make sure that `gem install pg -v '0.18.4'` succeeds before bundling在捆绑之前确保 `gem install pg -v '0.18.4'` 成功
【发布时间】:2017-08-27 10:28:14
【问题描述】:

执行bundle update时出现以下错误:

要查看此扩展无法编译的原因,请查看 mkmf.log 可以
可以在这里找到:

/Users/jack/.rvm/gems/ruby-2.3.3/extensions/x86_64-darwin-16/2.3.0/pg-0.18.4/mkmf.log

extconf 失败,退出代码 1

Gem 文件将保持安装在
/Users/jack/.rvm/gems/ruby-2.3.3/gems/pg-0.18.4 供检查。 结果记录到
/Users/jack/.rvm/gems/ruby-2.3.3/extensions/x86_64-darwin-16/2.3.0/pg-0.18.4/gem_make.out

安装 pg (0.18.4) 时出错,Bundler 不能 继续。
在捆绑之前确保gem install pg -v '0.18.4' 成功。

我不知道为什么会遇到这个问题。我执行gem install pg -v '0.18.4':

要查看此扩展无法编译的原因,请查看 mkmf.log,可在此处找到:

/Users/jack/.rvm/gems/ruby-2.3.3/extensions/x86_64-darwin-16/2.3.0/pg-0.18.4/mkmf.log

extconf 失败,退出代码 1

Gem 文件将继续安装在 /Users/jack/.rvm/gems/ruby-2.3.3/gems/pg-0.18.4 中以供检查。 结果记录到 /Users/jack/.rvm/gems/ruby-2.3.3/extensions/x86_64-darwin-16/2.3.0/pg-0.18.4/gem_make.out

我的 Gemfile 是这样的:

source 'https://gems.ruby-china.org'
gem 'rails', '5.0.0.1'
gem 'puma', '3.4.0'
gem 'sass-rails', '5.0.6'
gem 'uglifier', '3.0.0'
gem 'coffee-rails', '4.2.1'
gem 'jquery-rails', '4.1.1'
gem 'turbolinks', '5.0.1'
gem 'jbuilder', '2.4.1'

group :development, :test do
gem 'sqlite3', '1.3.11'
gem 'byebug', '9.0.0', platform: :mri
end

group :development do
  gem 'web-console', '3.1.1'
  gem 'listen', '3.0.8'
  gem 'spring', '1.7.2'
  gem 'spring-watcher-listen', '2.0.0'

end
group :production do gem 'pg', '0.18.4'
end
    # Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]

编辑 -1

我的操作系统是 macOS Sierra

【问题讨论】:

  • @Iceman 如果我使用你的推荐链接,我会得到sudo: apt-get: command not found/
  • 你在使用 mac 吗?
  • @Iceman 是的,我愿意。
  • 你的机器上安装了 PostgreSQL 吗? /Users/jack/.rvm/gems/ruby-2.3.3/extensions/x86_64-darwin-16/2.3.0/pg-0.18.4/mkmf.log的登录是怎样的?

标签: ruby-on-rails ruby rubygems


【解决方案1】:

我遇到了类似的问题,这对我有用:

(注意:首先确保您已经安装了 XCode 和自制软件)

  1. brew install postgresql

  2. gem uninstall pg - 这可能不会返回任何内容,没关系。

  3. 然后在您的应用目录中,bundle installgem install pg

【讨论】:

    【解决方案2】:

    这个问题经常出现,主要是导致 Postgres 版本过时。 试试

    brew update 
    brew install postgresql
    bundle install
    

    如果您仍需要使用该版本的 Postgres,您可以指定 'pg_config' 的路径:

    gem install pg -- --with-pg-config=<path to pg_config>
    

    【讨论】:

      猜你喜欢
      • 2015-07-21
      • 1970-01-01
      • 1970-01-01
      • 2021-07-19
      • 2016-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多