2016-03-23 7 views
0

私はawsでec2を使用していて、私のレールアプリを配備しようとしています。私は正常に私のec2ユーザーに私のアプリをクローン化し、バンドルインストールを試みたが、gem pgのためにうまくいかなかった。なぜバンドルをインストールできないのか分かりません。私はスタックオーバーフローでいくつかのソリューションを試しましたが、何も動作しませんでした。君の力が必要。gem pg(0.18.4)のためにバンドルインストールができません

Fetching gem metadata from https://rubygems.org/........... 
Fetching version metadata from https://rubygems.org/... 
Fetching dependency metadata from https://rubygems.org/.. 
Rubygems 2.0.14.1 is not threadsafe, so your gems will be installed one at a time. Upgrade to Rubygems 2.1.0 or higher to enable parallel gem installation. 
Using rake 11.1.1 
Using i18n 0.7.0 
Using json 1.8.3 
Using minitest 5.8.4 
Using thread_safe 0.3.5 
Using builder 3.2.2 
Using erubis 2.7.0 
Using mini_portile2 2.0.0 
Using rack 1.6.4 
Using mime-types 2.99.1 
Using arel 6.0.3 
Using execjs 2.6.0 
Using debug_inspector 0.0.2 
Using sass 3.4.21 
Using byebug 8.2.2 
Using net-ssh 3.1.0 
Using coffee-script-source 1.10.0 
Using thor 0.19.1 
Using concurrent-ruby 1.0.1 
Using multi_json 1.11.2 
Installing pg 0.18.4 with native extensions 

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. 

    /usr/bin/ruby2.0 extconf.rb 
checking for pg_config... no 
No pg_config... trying anyway. If building fails, please try again with 
--with-pg-config=/path/to/pg_config 
checking for libpq-fe.h... no 
Can't find the 'libpq-fe.h header 
*** 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}/lib64 
    --with-make-prog 
    --without-make-prog 
    --srcdir=. 
    --curdir 
    --ruby=/usr/bin/ruby2.0 
    --with-pg 
    --without-pg 
    --enable-windows-cross 
    --disable-windows-cross 
    --with-pg-config 
    --without-pg-config 
    --with-pg_config 
    --without-pg_config 
    --with-pg-dir 
    --without-pg-dir 
    --with-pg-include 
    --without-pg-include=${pg-dir}/include 
    --with-pg-lib 
    --without-pg-lib=${pg-dir}/ 


Gem files will remain installed in /home/ec2-user/.gem/ruby/2.0/gems/pg-0.18.4 for inspection. 
Results logged to /home/ec2-user/.gem/ruby/2.0/gems/pg-0.18.4/ext/gem_make.out 
Using bundler 1.11.2 
Using tilt 2.0.2 
Using spring 1.6.4 
Installing sqlite3 1.3.11 with native extensions 

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. 

    /usr/bin/ruby2.0 extconf.rb 
checking for sqlite3.h... no 
sqlite3.h is missing. Try 'port install sqlite3 +universal', 
'yum install sqlite-devel' or 'apt-get install libsqlite3-dev' 
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}/lib64 
    --with-make-prog 
    --without-make-prog 
    --srcdir=. 
    --curdir 
    --ruby=/usr/bin/ruby2.0 
    --with-sqlite3-dir 
    --without-sqlite3-dir 
    --with-sqlite3-include 
    --without-sqlite3-include=${sqlite3-dir}/include 
    --with-sqlite3-lib 
    --without-sqlite3-lib=${sqlite3-dir}/ 


Gem files will remain installed in /home/ec2-user/.gem/ruby/2.0/gems/sqlite3-1.3.11 for inspection. 
Results logged to /home/ec2-user/.gem/ruby/2.0/gems/sqlite3-1.3.11/ext/sqlite3/gem_make.out 
Using rdoc 4.2.2 
Using tzinfo 1.2.2 
Using nokogiri 1.6.7.2 
Using rack-test 0.6.3 
Using mail 2.6.3 
Using autoprefixer-rails 6.3.3.1 
Using uglifier 2.7.2 
Using binding_of_caller 0.7.2 
Using net-scp 1.2.1 
Using coffee-script 2.4.1 
Using sprockets 3.5.2 
An error occurred while installing pg (0.18.4), and Bundler cannot continue. 
Make sure that `gem install pg -v '0.18.4'` succeeds before bundling. 

と私の宝石のファイルにエラーがスタックトレースに表示されている

source 'https://rubygems.org' 

ruby '2.0.0' 
gem 'rails_12factor', group: :production 
gem 'bootstrap-sass' 
gem 'rails', '4.2.5.1' 
gem 'sass-rails', '~> 5.0' 
gem 'uglifier', '>= 1.3.0' 
gem 'coffee-rails', '~> 4.1.0' 
gem 'jquery-rails' 
gem 'turbolinks' 
gem 'jbuilder', '~> 2.0' 
gem 'sdoc', '~> 0.4.0', group: :doc 
gem 'capistrano', '~> 3.4.0' 

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

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


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

group :development do 

    gem 'web-console', '~> 2.0' 

    gem 'spring' 
end 

答えて

1

を下回っている:

Can't find the 'libpq-fe.h header 

あなたはPGアダプタを構築するために必要なのlibpqヘッダを、持っていません。 PostgreSQLとdevの依存関係(libpq-devパッケージ)がインストールされていることを確認してください。

また、Gemfileをクリーンアップする必要があります。あなたは3つの同等の宣言をgroup :development, :test do持っています。

さらに、Sqlite3とPGの両方の宝石を同じenvsでインポートします。あなたのデータベースに関する決定を下し、そのうちの1つだけを使用してください。

プロダクション用に宣言されたデータベースがないため、プロダクションへの展開が失敗します。 Linuxの

+0

ので、私は特に何をすべきをインストールしますか? – hujihuji

0

、念これら2

sudo apt-get install postgresql 
sudo apt-get install pgadmin3 
bundle install 
関連する問題