前回の続き的な内容。(結構前にメモしておいた内容だが、せっかくなので記事にした)本の通りにsqlite3-rubyの次はdbiをインストールしようとしてまたエラー。
gem install dbi
を実行すると
ERROR: While executing gem … (Gem::DependencyError)
Unable to resolve dependencies: dbi requires deprecated (= 2.0.1)
と表示された。とりあえず素直にERRORの表示通り、deprecatedをversion指定してインストールしてみる。
gem install deprecated -v 2.0.1
とすると
ERROR: Could not find a valid gem ‘deprecated’ (= 2.0.1) in any repository
ERROR: While executing gem … (Gem::RemoteFetcher::FetchError)
SocketError: getaddrinfo: (文字化けした文章) (http://rubygems.org
/latest_specs.4.8.gz)
とのこと。調べるとやはりネットワークの問題っぽい。そっちを解決した方が早い気がしてきたが、ここは初志貫徹でlocalインストール。deprecated-2.0.1.gemをhttps://rubygems.org/からダウンロードし、localオプションで実行。(localでやるときは、gemがあるディレクトリに移動して以下を実行)
gem install deprecated –local
今度は成功。再び以下を再チャレンジしたところ、成功!
gem install dbi
・・・あれ、local付けてないけどできた。dbiのgemも一応ダウンロードして同じディレクトリに置いといたから?実行ディレクトリにgemのファイルがあれば勝手に拾ってインストールしてくれるのかな?ま、とりあえずインストールできたから良しとしよう。ちなみに本の順番的に、この後でインストールするdbd-sqlite3も、rubygems.orgから直接ダウンロードしてインストールしたらエラー無くできた。結局、本で紹介されているgemは全部localで入れたので、gem同士の整合性とか大丈夫かなと思ったが、本の最後まで問題は特に起きなかった。