2012-08-31 41 views
0

我嘗試部署我的Ruby代碼到Heroku的 這是我的Gemfile,東西分類器寶石與Heroku的

source 'https://rubygems.org' 

gem 'rails', '3.2.6' 
gem 'googlecharts' 
gem 'stuff-classifier' 
gem 'devise' 

# Bundle edge Rails instead: 
# gem 'rails', :git => 'git://github.com/rails/rails.git' 

group :production do 
    gem "pg" 
end 

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

# Gems used only for assets and not required 
# in production environments by default. 
group :assets do 
    gem 'sass-rails', '~> 3.2.3' 
    gem 'coffee-rails', '~> 3.2.1' 

    # See https://github.com/sstephenson/execjs#readme for more supported runtimes 
    # gem 'therubyracer', :platforms => :ruby 

    gem 'uglifier', '>= 1.0.3' 
end 

gem 'jquery-rails' 

和IM上推得到這個

HengHongs-MacBook-Pro:collab Kinnovate$ git push heroku master 
Counting objects: 19, done. 
Delta compression using up to 2 threads. 
Compressing objects: 100% (16/16), done. 
Writing objects: 100% (16/16), 1.44 KiB, done. 
Total 16 (delta 11), reused 0 (delta 0) 

-----> Heroku receiving push 
-----> Removing .DS_Store files 
-----> Ruby/Rails app detected 
-----> Installing dependencies using Bundler version 1.2.0 
     Running: bundle install --without development:test --path vendor/bundle --binstubs bin/ --deployment 
     Fetching gem metadata from https://rubygems.org/....... 
     Using rake (0.9.2.2) 
     Using i18n (0.6.0) 
     Using multi_json (1.3.6) 
     Using activesupport (3.2.6) 
     Using builder (3.0.0) 
     Using activemodel (3.2.6) 
     Using erubis (2.7.0) 
     Using journey (1.0.4) 
     Using rack (1.4.1) 
     Using rack-cache (1.2) 
     Using rack-test (0.6.1) 
     Using hike (1.2.1) 
     Using tilt (1.3.3) 
     Using sprockets (2.1.3) 
     Using actionpack (3.2.6) 
     Using mime-types (1.19) 
     Using polyglot (0.3.3) 
     Using treetop (1.4.10) 
     Using mail (2.4.4) 
     Using actionmailer (3.2.6) 
     Using arel (3.0.2) 
     Using tzinfo (0.3.33) 
     Using activerecord (3.2.6) 
     Using activeresource (3.2.6) 
     Using bcrypt-ruby (3.0.1) 
     Using coffee-script-source (1.3.3) 
     Using execjs (1.4.0) 
     Using coffee-script (2.2.0) 
     Using rack-ssl (1.3.2) 
     Using json (1.7.5) 
     Using rdoc (3.12) 
     Using thor (0.16.0) 
     Using railties (3.2.6) 
     Using coffee-rails (3.2.2) 
     Using orm_adapter (0.4.0) 
     Using warden (1.2.1) 
     Using devise (2.1.2) 
     Using fast-stemmer (1.0.1) 
     Using googlecharts (1.6.8) 
     Using jquery-rails (2.1.1) 
     Installing msgpack (0.4.7) with native extensions 
     Using pg (0.14.0) 
     Using bundler (1.2.0) 
     Using rails (3.2.6) 
     Using sass (3.2.1) 
     Using sass-rails (3.2.5) 
     Installing sequel (3.20.0) 
     Installing sqlite3 (1.3.6) with native extensions 
     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 
     --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 
     --disable-local 
     Gem files will remain installed in /tmp/build_2wrfyq245cb6w/vendor/bundle/ruby/1.9.1/gems/sqlite3-1.3.6 for inspection. 
     Results logged to /tmp/build_2wrfyq245cb6w/vendor/bundle/ruby/1.9.1/gems/sqlite3-1.3.6/ext/sqlite3/gem_make.out 
     An error occurred while installing sqlite3 (1.3.6), and Bundler cannot continue. 
     Make sure that `gem install sqlite3 -v '1.3.6'` succeeds before bundling. 
! 
!  Failed to install gems via Bundler. 
!  
!  Detected sqlite3 gem which is not supported on Heroku. 
!  http://devcenter.heroku.com/articles/how-do-i-use-sqlite3-for-development 
! 
!  Heroku push rejected, failed to compile Ruby/rails app 

它工作正常,當我刪除東西分類寶石來自Gemfile

我該如何解決這個問題?

回答

0

分叉回購和從gemspec文件

加入此除去源碼扶養到的Gemfile

gem 'stuff-classifier' , :git =>'https://github.com/henghonglee/stuff-classifier'