git push heroku master问题。 heroku不允许我上传我的应用程序

时间:2013-06-06 20:41:05

标签: git heroku

我一直在跟踪ruby on rails应用程序教程,我一步一步地按照所有内容,但当我到达将我的应用程序上传到heroku的最后一步时,我收到了一条错误消息。我尝试安装它要求的gem,但我仍然会收到相同的错误消息。

$ git push heroku master 计数对象:67,完成。 Delta压缩最多使用4个线程。 压缩对象:100%(53/53),完成。 书写对象:100%(67/67),26.30 KiB | 0字节/秒,完成。 总计67(delta 4),重复使用0(delta 0)

-----> Ruby/Rails app detected
-----> WARNING: Removing `Gemfile.lock` because it was generated on Windows.
       Bundler will do a full resolve so native gems are handled properly.
-----> Installing dependencies using Bundler version 1.3.2
       Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin
       Fetching gem metadata from https://rubygems.org/...........
       Fetching gem metadata from https://rubygems.org/..
       Resolving dependencies...
       Installing rake (10.0.4)
       Installing i18n (0.6.1)
       Installing multi_json (1.7.6)
       Installing activesupport (3.2.13)
       Installing builder (3.0.4)
       Installing activemodel (3.2.13)
       Installing erubis (2.7.0)
       Installing journey (1.0.4)
       Installing rack (1.4.5)
       Installing rack-cache (1.2)
       Installing rack-test (0.6.2)
       Installing hike (1.2.3)
       Installing tilt (1.4.1)
       Installing sprockets (2.2.2)
       Installing actionpack (3.2.13)
       Installing mime-types (1.23)
       Installing polyglot (0.3.3)
       Installing treetop (1.4.14)
       Installing mail (2.5.4)
       Installing actionmailer (3.2.13)
       Installing arel (3.0.2)
       Installing tzinfo (0.3.37)
       Installing activerecord (3.2.13)
       Installing activeresource (3.2.13)
       Using bundler (1.3.2)
       Installing coffee-script-source (1.6.2)
       Installing execjs (1.4.0)
       Installing coffee-script (2.2.0)
       Installing rack-ssl (1.3.3)
       Installing json (1.8.0)
       Installing rdoc (3.12.2)
       Installing thor (0.18.1)
       Installing railties (3.2.13)
       Installing coffee-rails (3.2.2)
       Installing jquery-rails (3.0.0)
       Installing rails (3.2.13)
       Installing sass (3.2.9)
       Installing sass-rails (3.2.6)
       Installing sqlite3 (1.3.7)
       Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
       /usr/local/bin/ruby extconf.rb
       checking for sqlite3.h... no
       sqlite3.h is missing. Try 'port install sqlite3 +universal'
       or 'yum install sqlite-devel' and check your shared library search path (the
       location where your sqlite3 shared library is located).
       *** 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
       --with-opt-dir
       --without-opt-dir
       --with-opt-include
       --without-opt-include=${opt-dir}/include                                                                                                  --without-opt-lib=${opt-dir}/lib
       --with-opt-lib
       --without-opt-lib=${opt-dir}/lib
       --with-make-prog                                                                                                                                                         --curdi
       --without-make-prog                                                                                                                       /usr/local/bin/ruby
       --srcdir=.                                                                                                                                         
       --curdir
       --ruby=/usr/local/bin/ruby                                                                                                                                        --without-sqli
       --with-sqlite3-dir                                                                                                                        -lib                                  
       --without-sqlite3-dir
       --with-sqlite3-include
       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-sqlite3-dir
       --without-sqlite3-dir
       --with-sqlite3-include
       --without-sqlite3-include=${sqlite3-dir}/include
       --with-sqlite3-lib
       --without-sqlite3-lib=${sqlite3-dir}/lib
       --enable-local
       --without-sqlite3-include=${sqlite3-dir}/include
       --with-sqlite3-lib
       --without-sqlite3-lib=${sqlite3-dir}/lib
       --enable-local
       --disable-local
       Gem files will remain installed in /tmp/build_1rov1v3jt0scl/vendor/bundle/ruby/1.9.1/gems/sqlite3-1.3.7 for inspection.
       Results logged to /tmp/build_1rov1v3jt0scl/vendor/bundle/ruby/1.9.1/gems/sqlite3-1.3.7/ext/sqlite3/gem_make.out
       An error occurred while installing sqlite3 (1.3.7), and Bundler cannot continue.
       Make sure that `gem install sqlite3 -v '1.3.7'` succeeds before bundling.
 !
 !     Failed to install gems via Bundler.
 !

 !     Push rejected, failed to compile Ruby/Rails app

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

2 个答案:

答案 0 :(得分:2)

Heroku不再支持SQLite作为数据库,因此您必须切换到Postgres gem:pg。虽然您可以使用sqlite3进行开发并使用postgres进行生产,但不建议使用它,因为您希望尽可能保持开发和生产环境的相似性。

Heroku has a guide让你入门

答案 1 :(得分:0)

由于Heroku为您的应用程序提供PostgreSQL数据库,请编辑您的Gemfile并更改此行:

gem'sqlite3' 对此:

gem'pg'