Rails sqlite3 gem をビルドできません。sqlite3-ruby をインストールしても sqlite3 だけをインストールしても、同じように失敗します。sqlite3 は macports によってインストールされたので、すべて /opt/local にあります。私はrvmを使用しています。新しく更新された OS X Mountain Lion MacBook を使用しています。
flyer$ which sqlite3
/opt/local/bin/sqlite3
flyer$ ruby -v
ruby 1.8.7 (2012-02-08 patchlevel 358) [i686-darwin11.4.0]
flyer$ rails -v
Rails 2.3.14
flyer$ gem install sqlite3-ruby -- --with-opt-dir
Building native extensions. This could take a while...
ERROR: Error installing sqlite3-ruby:
ERROR: Failed to build gem native extension.
/Users/russ/.rvm/rubies/ruby-1.8.7-p358/bin/ruby extconf.rb --with-opt-dir
/Users/russ/.rvm/rubies/ruby-1.8.7-p358/lib/ruby/1.8/mkmf.rb:1164:in `dir_config': private method `split' called for true:TrueClass (NoMethodError)
from /Users/russ/.rvm/rubies/ruby-1.8.7-p358/lib/ruby/1.8/mkmf.rb:1745:in `init_mkmf'
from /Users/russ/.rvm/rubies/ruby-1.8.7-p358/lib/ruby/1.8/mkmf.rb:1770
from extconf.rb:3:in `require'
from extconf.rb:3
***dir_config: dir is true, target is opt, idefault is , ldefault is
Gem files will remain installed in /Users/russ/.rvm/gems/ruby-1.8.7-p358/gems/sqlite3-1.3.6 for inspection.
Results logged to /Users/russ/.rvm/gems/ruby-1.8.7-p358/gems/sqlite3-1.3.6/ext/sqlite3/gem_make.out
で始まる行***dir_config:
は、mkmf.rb 行 1164 の直前に追加した puts ステートメントの出力です。行 1164 は
defaults = Array === dir ? dir : dir.split(File::PATH_SEPARATOR)
ホスティングプロバイダーのバージョンを一致させる必要があるため、ルビーまたはレールをアップグレードできないことに注意してください。これは、Mountain Lion のアップグレード前にビルドされていたと思います。今日、最新の XCode をインストールしました。
私はこれがどういうわけか私の問題でなければならないことを知っています(そしてそれは何かばかげていると思います)が、その方法がわかりません。誰でも助けてもらえますか?