2011-10-23 7 views
4

私はHerokuにプッシュしようとしているレール3.1アプリを持っています。私はそれを押しても失敗し続けます。Rails 3.1 Sqlite3のエラーがHerokuにプッシュ

gem 'sqlite3', :group => [:development, :test] 
gem 'pg', :group => [:production] 

でもバンドルが、私はエラーを取得していますなどのインストールを実行した後:

Installing sqlite3 (1.3.4) with native extensions Unfortunately, a fatal error has occurred. Please report this error to the Bundler issue tracker at https://github.com/carlhuda/bundler/issues so that we can fix it. Thanks! 
     /usr/local/lib/ruby/1.9.1/rubygems/installer.rb:483:in `rescue in block in build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError) 
     /usr/local/bin/ruby extconf.rb 
     checking for sqlite3.h... no 
     sqlite3.h is missing. Try 'port install sqlite3 +universal' 
     or 'yum install sqlite3-devel' and check your shared library search path (the 
     location where your sqlite3 shared library is located). 

は、私は次の行を持っている私の宝石のファイルを変更しました。私はgemファイルにsqlite3なしでいくつかのテストを実行しても、それをHerokuにインストールしようとします。助言がありますか?

+2

あなたのGemfileとGemfile.lockをコミットしてherokuにプッシュしたことを確認するだけですか?また、あなたは英雄でどのスタックを使用していますか? –

+0

はい、私はすべてを約束し、それをすべて英雄に押し込んだり、むしろ試してみました。私はCedarを使用しようとしています。これは、Rails 3.1 – NineBlindEyes

+1

に必要なものです。これは、アセットパイプラインを使用する場合にのみ該当し、Rails 3.1は他のスタックでも実行されます。 –

答えて

1

Cedarスタックはまだドキュメントに応じてbundle withoutをサポートしていないため、展開時にはまだインストールを試みます。http://devcenter.heroku.com/articles/bundler

あなたが展開しているものであれば、ローカルでpostgresを使用するほうがずっと良いでしょう。

+0

sqlite3を使用していた今、それを切り替える方法はありますか? – NineBlindEyes

+1

heroku dbを使用している場合は、ローカルにプッシュするとSQLite DBがポストグレスにプッシュされます(Herokuのローカルデータが必要な場合)。あなたの開発データベース(config/database.yml)をpostgresに再設定し、heroku db:pullを実行してHerokuから元に戻します。 –

+0

私が実際にそれをヘロクで始めることができれば、私はそれをやります。 – NineBlindEyes

2

私は1つの支店で働いていて、私のマスターを押していました。一度私はそれらをマージし、正しいブランチをプッシュすべての素晴らしい仕事をした。

+0

[この男はあなたと同じ問題を抱えていました](http://stackoverflow.com/a/8007353/456814)。 –

関連する問題