【Ruby】「作りながら学ぶRuby入門」で、sqlite3-rubyがインストールできなかった問題の対策 (Windows7)

投稿日:2015年10月17日
最終更新日:2018年11月4日

最近この本でRubyの勉強をしている。

RubyのVersionは1.9.3。この本の中の「Rubyでデータベースを利用しよう」の章で

gem install sqlite3-ruby

を実行すると、以下のエラーが発生。

ERROR: Could not find a valid gem ‘bundler’ (>= 0), here is why:
Unable to download data from http://rubygems.org/ – no such name (http://api.rubygems.org/latest_specs.4.8.gz)

ググるとネットワークの設定に問題がありそう。とりあえず本に書いてある内容はサラッと終わらせたい。そうだ、localでインストールしよう!ということで、ネット自体にはつながるので、以下のgemをhttps://rubygems.org/から直接ダウンロード。(gemの名前でググれば、上の方にRubygems.orgのサイトがでてくる)

dbd-sqlite3-1.2.5.gem
dbi-0.4.5.gem
sqlite3-ruby-1.3.3.gem

versionの組み合わせによっては動作しないこともあるらしいので、本と同じversionをダウンロードした。gemを置いてあるフォルダに移動し–localオプションをつけて本の順番通りにインストール。

gem install –local sqlite3-ruby

・・・しようとしたら以下のErrorが発生。

ERROR: Error installing sqlite3-ruby:
The ‘sqlite3’ native gem requires installed build tools.
Please update your PATH to include build tools or download the DevKit
from ‘http://rubyinstaller.org/downloads’ and follow the instructions
at ‘http://github.com/oneclick/rubyinstaller/wiki/Development-Kit’

エラーメッセージの指示通り、http://rubyinstaller.org/downloadsから、DevKit-tdm-32-4.5.2-20111229-1559-sfx.exeをダウンロード。http://github.com/oneclick/rubyinstaller/wiki/Development-Kitの「Quick Start」読みインストール。インストール後再チャレンジ。

gem install –local sqlite3-ruby

ちょっと進んだ感があるが、次のようなErrorが出る。

ERROR: Error installing sqlite3:
ERROR: Failed to build gem native extension.
C:/Ruby193/bin/ruby.exe extconf.rb
checking for sqlite3.h… no
sqlite3.h is missing. Install SQLite3 from http://www.sqlite.org/ first.

こちらで解決法発見。まずSQLiteのダウンロードページから以下の2つをダウンロード。

sqlite-amalgamation-3081101.zip
sqlite-dll-win32-x86-3081101.zip

解凍して、両方の中身を C:/sqlite3 というフォルダに置き、以下のoptionをつけて再々チャレンジ。

gem install sqlite3-ruby –local — –with-sqlite3-include=C:/sqlite3 –with-sqlite3-lib=C:/sqlite3

ちなみに途中に「–」だけ入れているのは、これ以降はbuildのオプションですよ、という意味らしい。その結果・・・

Successfully installed sqlite3-1.3.10
Successfully installed sqlite3-ruby-1.3.3
2 gems installed
Installing ri documentation for sqlite3-1.3.10…
Installing ri documentation for sqlite3-ruby-1.3.3…
Installing RDoc documentation for sqlite3-1.3.10…
Installing RDoc documentation for sqlite3-ruby-1.3.3…

できた!


投稿者: wakky

映画と旅行が大好きなエンジニア。お酒、ゲーム、読書も好き。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください