ruby - Heroku Aspen 上的 "ERROR: Failed to build gem native extension"

标签 ruby heroku rubygems

我正尝试将一个旧的 Ruby 项目从一个 Heroku 应用程序克隆到另一个应用程序,但我无法让它运行。

我已经使用 aspen-mri-1.8.6 堆栈设置了一个新应用。

但是当我向上推送代码时(直接从正在运行的应用程序克隆),我收到以下错误:

Counting objects: 465, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (214/214), done.
Writing objects: 100% (465/465), 192.12 KiB | 95 KiB/s, done.
Total 465 (delta 239), reused 440 (delta 230)

-----> Heroku receiving push
-----> Ruby/Rack app detected

-----> Installing gem patron from http://rubygems.org
       Building native extensions.  This could take a while...
       ERROR:  Error installing patron:
        ERROR: Failed to build gem native extension.

       /usr/local/bin/ruby extconf.rb
       checking for curl-config... no
       checking for main() in -lcurl... no
       *** 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.

       Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=/usr/local/bin/ruby
        --with-curl-dir
        --without-curl-dir
        --with-curl-include
        --without-curl-include=${curl-dir}/include
        --with-curl-lib
        --without-curl-lib=${curl-dir}/lib
        --with-curllib
        --without-curllib
       extconf.rb:34:   Can't find libcurl or curl/curl.h (RuntimeError)

         Try passing --with-curl-dir or --with-curl-lib and --with-curl-include
         options to extconf.


       Gem files will remain installed in /app/tmp/repo.git/gems_build/gems/patron-0.4.18 for inspection.
       Results logged to /app/tmp/repo.git/gems_build/gems/patron-0.4.18/ext/patron/gem_make.out
 !     Heroku push rejected, failed to install gem

To git@heroku.com:thumbify.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:thumbify.git'

如有任何建议,我们将不胜感激。

最佳答案

sudo apt-get install libcurl3-dev


libcurl 是一个易于使用的客户端 URL 传输库 这是 mri ruby​​ 所需的库之一

关于ruby - Heroku Aspen 上的 "ERROR: Failed to build gem native extension",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11572427/

相关文章:

ruby-on-rails - nokogiri-1.7.0.1 要求 ruby​​ 版本 >= 2.1.0,与当前版本 ruby​​ 2.0.0p648 不兼容

python - 为什么脚本语言(例如 Perl、Python、Ruby)不适合作为 shell 语言?

php - 在 Heroku 中部署 Laravel 项目后 MySQL 不起作用

ruby-on-rails - 在 Rails 中,如果不使用 Bundler,将 gem 卡住到项目中的最首选方法是什么?

Heroku 无法连接到雪松堆栈上的服务器 : 'Connection refused' when deploying a Rails 3. 2.3 应用程序

heroku - 从 heroku gem 切换到 heroku-api topolbelt

具有灵活的 gem 依赖关系的 Ruby Gems?

css - Ruby on Rails 教程自定义 CSS 未显示在应用程序中

ruby-on-rails - 如何在 ruby​​ on rails 中正确执行 "where"子句?

ruby-on-rails - 使用外部 API 请求数据填充 Rails 数据库