0

Rails プロジェクトを Heroku にプッシュしようとしています。fcgi に関するエラーが表示されます。私のマシンでは、fcgi を問題なくインストールできます。gem install fcgi -v '0.8.8'自分のマシンでエラーなしで実行できます。

-----> Ruby/Rails app detected
-----> Using Ruby version: ruby-2.0.0
-----> Installing dependencies using Bundler version 1.3.2
   Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
   Fetching gem metadata from http://rubygems.org/.........
   Fetching gem metadata from http://rubygems.org/..
   Installing rake (0.9.2.2)
   Installing abstract (1.0.0)
   Installing activesupport (3.0.11)
   Installing builder (2.1.2)
   Installing i18n (0.5.0)
   Installing activemodel (3.0.11)
   Installing erubis (2.6.6)
   Installing rack (1.4.0)
   Installing rack-mount (0.7.1)
   Installing rack-test (0.6.1)
   Installing tzinfo (0.3.33)
   Installing actionpack (3.0.11)
   Installing mime-types (1.16)
   Installing polyglot (0.3.1)
   Installing treetop (1.4.10)
   Installing mail (2.4.4)
   Installing actionmailer (3.0.11)
   Installing arel (2.0.9)
   Installing activerecord (3.0.11)
   Installing activeresource (3.0.11)
   Installing bigdecimal (1.1.0)
   Installing fcgi (0.8.8)
   Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
   /tmp/build_ljhotq40guh7/vendor/ruby-2.0.0/bin/ruby extconf.rb
   checking for fcgiapp.h... no
   checking for fastcgi/fcgiapp.h... 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=/tmp/build_ljhotq40guh7/vendor/ruby-2.0.0/bin/ruby
   --with-fcgi-dir
   --without-fcgi-dir
   --with-fcgi-include
   --without-fcgi-include=${fcgi-dir}/include
   --with-fcgi-lib
   --without-fcgi-lib=${fcgi-dir}/
   Gem files will remain installed in /tmp/build_ljhotq40guh7/vendor/bundle/ruby/2.0.0/gems/fcgi-0.8.8 for inspection.
   Results logged to /tmp/build_ljhotq40guh7/vendor/bundle/ruby/2.0.0/gems/fcgi-0.8.8/ext/fcgi/gem_make.out
   An error occurred while installing fcgi (0.8.8), and Bundler cannot continue.
   Make sure that `gem install fcgi -v '0.8.8'` succeeds before bundling.

Gemfile:

source 'http://rubygems.org'

gem 'rails', '3.0.11'

#gem 'mysql2', '~> 0.2.17'

group :development, :test do
  gem 'sqlite3'
end

group :production do
  gem 'pg'
end

# Use unicorn as the web server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger (ruby-debug for Ruby 1.8.7+, ruby-debug19 for Ruby 1.9.2+)
# gem 'ruby-debug'
# gem 'ruby-debug19', :require => 'ruby-debug'

# Bundle the extra gems:
# gem 'bj'
# gem 'nokogiri'
# gem 'sqlite3-ruby', :require => 'sqlite3'
# gem 'aws-s3', :require => 'aws/s3'

# Bundle gems for the local environment. Make sure to
# put test-only gems in this group so their generators
# and rake tasks are available in development mode:
# group :development, :test do
#   gem 'webrat'
# end
gem 'fcgi'
gem 'minitest'
4

1 に答える 1

1

本当に古いバージョンの Rails を使用しているようです。

Heroku は最近、すべての新しいアプリケーションをデフォルトで Ruby 2.0.0 を使用するように変更しました。

ruby '1.9.3'

最新バージョンの Ruby や古い Rails/gems などで問題が発生している可能性があるため、アプリケーションを Ruby 1.9.3 にロックするには、Gemfile のソース行の下に を追加します。

于 2013-06-24T20:57:02.990 に答える