我无法捆绑安装,因为`gem install sqlite3 -v' 1.3.11'在ec2实例上

时间:2016-03-24 07:28:11

标签: ruby-on-rails amazon-web-services amazon-ec2 sqlite

我试图通过AWS启动我的rails应用程序,但由于捆绑安装失败,我无法做到这一点。我删除了宝石pg因为我已经宝石sqlite然后发生了这个问题。

bundle install
Fetching gem metadata from https://rubygems.org/...........
Fetching version metadata from https://rubygems.org/...
Fetching dependency metadata from https://rubygems.org/..
Resolving dependencies...
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 bundler 1.11.2
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
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 sqlite3 (1.3.11), and Bundler cannot
continue.
Make sure that `gem install sqlite3 -v '1.3.11'` suc

宝石文件如下。如果我的宝石文件中有任何我应该做的事情,请告诉我。

    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 'byebug'
    end

group :development do

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

  gem 'spring'
end

任何想法?需要你的帮助!

1 个答案:

答案 0 :(得分:0)

您必须先安装SQLite3的库头。

sudo apt-get update # Update software list first
sudo apt-get install libsqlite3-dev # Install the library headers

对于CentOS,它应该是:

sudo yum install sqlite-devel